Функция Azure должна запускаться каждые 10 минут неограниченно, начиная с 00:59:59 (часы, минуты, секунды).Расписание cron, которое я использую, не выполнено.
Я использую функцию Javascript Azure на основе таймера, например,
module.exports = async function (context, myTimer) {
var timeStamp = new Date().toISOString();
Я не верю, что в Azure есть настройкаФункция для установки даты / времени начала.Планировщик cron кажется единственным вариантом.
Согласно документации по функциям Azure:
Выражение расписания - это CRON-выражение, которое включает 6 полей:
{second} {minute} {hour} {day} {month} {day of the week}
Обратите внимание, что во многих выражениях cron, которые вы находите в Интернете, отсутствует поле {second}, поэтому, если вы копируете из одного из них, вам придется настроить дополнительное поле.
Примеры, представленные в документации:
Для запуска каждые 5 минут: 0 */5 * * * *
Для запуска в 9:30 каждый день: 0 30 9 * * *
59 */10 * * * *
приводит к следующим временам выполнения:
- Результат: 11:40:59 |Желаемый: 11: 39: 59
- Результат: 11:30:59 |Желаемый: 11: 29: 59
- Результат: 11:20:59 |Желаемый: 11: 19: 59
- Результат: 11:10:59 |Требуется: 11: 09: 59
59 */10-1 * * * *
не поддерживается.
Причина, по которой функция Azure должна начать свой первый запуск в 00:59:59, заключается в том, что функциясравнивает метки времени событий, которые произошли в предыдущие 10 минут, с 10-минутным интервалом времени UTCЕсли какие-либо временные метки события до минутного уровня соответствуют временной метке UTC в пределах интервала с минутным уровнем (например, 2018-12-21Txx:3x:xx.xxxZ
события в 2018-12-21T00:35:18.894Z
соответствует любой временной метке UTC этого шаблона 2018-12-21Txx:3x:xx.xxxZ
), выполняется действие.)
Я застрял.Любая помощь приветствуется.Спасибо.