Запуск сценария на указанную c дату каждого месяца azure - PullRequest
0 голосов
/ 30 марта 2020

Я хочу запускать скрипт powershell 28 числа каждого месяца в 23:00 UT C, используя azure. Я изучаю azure logi c приложения и функциональные приложения и в идеале хотел бы использовать комбинацию, но любая из них также подойдет.

Я пытался использовать TimerTrigger в функциональных приложениях, и моя первоначальная мысль заключалась в том, что с использованием CRON это было бы просто, и я придумал 0 0 23 28 * ? *. Но я только что понял, что параметр дня принимает только 0-6 для 7 дней недели.

В приложениях logi c я не смог найти ничего, кроме установщика частоты, который позволил бы мне работать это раз в месяц, но не дает контроля над временем.

Кто-нибудь может предложить, пожалуйста, способ обойти это?

Ответы [ 2 ]

1 голос
/ 30 марта 2020

Azure функция использует библиотеку NCRONTAB, более подробно вы можете обратиться к этому do c: выражений NCRONTAB . Формат cron должен быть {second} {minute} {hour} {day} {month} {day-of-week}.

. Если вы хотите установить таймер на 28-е число каждого месяца в 23:00 UT C, вы можете попробовать это выражение cron: 0 0 23 28 * *.

enter image description here

О приложении logi c вы правы, пока оно поддерживает только расписание частот, оно не может реализовать подробный график времени.

1 голос
/ 30 марта 2020

Это может быть достигнуто с помощью только CRON выражений в Azure Функции.

Выражение CRON - 00 23 28 * *

Объяснение:

enter image description here Ссылка

Обновление 1:

Игнорировать дату. я написал его как 27. Вы можете просто указать его как 28

Я создал приложение функции, чтобы проверить это, так как OP упомянул, что он не работает. Вот консоль времени выполнения функции с вычисленными датами.

enter image description here

Так выглядит мой код

[FunctionName("TimeTrigger")]
        public static void Run([TimerTrigger("0 23 27 * *")]TimerInfo myTimer, ILogger log)
        {
            log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...