2016-05-24 3 views
5

У меня есть программа, которую я хочу запускать один раз в день. Я поместил свой файл program.exe и my settings.job в один zip-файл и загрузил его. Я продолжал работать в непрерывном режиме. Моя settings.job выглядит следующим образом:Azure Webjobs игнорирует выражение CRON

{ 
    "schedule": "0 0 8 * * *" 
} 

Мой план состоял в том, что он работает каждый день в 8, но вместо этого он работает все время твердил снова и снова. Что я сделал не так?

+0

дубликата HTTP: // StackOverflow .com/вопросы/37376002/лазурь-веб-задания, останавливается запуск / –

ответ

5

Вы webjob работает режим должен быть On Demand:

Из документации:

  • Вы все еще нужно Всегда на установке должен быть включен на приложение.
  • Примечание: при развертывании WebJob из Visual Studio не забудьте пометить свойства файла settings.job как «Копировать, если новый».
3

После нескольких дней безуспешно пытались сделать неуловимый Azure запустить WebJob на выражение CRON следующие лучших онлайн-уроки:

Мне, наконец, удалось сделать мой jo bs запускаются по расписанию cron.

Для меня настройки.json в корневой папке никогда не работали. То, что работало и на самом деле было крайне просто реализовать, было использование расширений SDK Azure Webjobs. Такой подход дает большую гибкость в осуществлении планирования, она очень хорошо документирована и есть полные примеры проектов для него: https://github.com/Azure/azure-webjobs-sdk-extensions/blob/master/src/ExtensionsSample/Samples/TimerSamples.cs

С функцией определения так просто, как это вы можете быть запущен и работает с планированием хрон:

public static void CronJob([TimerTrigger("0 */5 * * * *")] TimerInfo timer) { Console.WriteLine("Cron job fired!"); }

расширениях Webjobs также открывают целый мир других возможностей, чтобы они 100% стоит проверить, если вы используете Azure Webjobs: https://github.com/Azure/azure-webjobs-sdk-extensions