Как установить оповещение для Azure фабрики данных, когда для завершения конвейера требуется более N минут - PullRequest
1 голос
/ 19 июня 2020

Мне нужно настроить систему предупреждений, если мой конвейер Azure Datafactory работает более 20 минут. Предупреждение должно появиться во время работы конвейера и его продолжительность составляет 20 минут, а не после завершения конвейера. Как я могу это сделать? Я думаю, что это можно сделать с помощью функции Azure, но я не знаком с ней, поэтому я ищу сценарий для того же.

1 Ответ

0 голосов
/ 22 июня 2020

Да, функция azure - это решение для удовлетворения ваших требований.

Например, если вы используете Python. Вам нужна функция azure, которая периодически запускается для отслеживания состояния конвейера. Ключевым моментом является продолжительность конвейера. трубопровод основан на деятельности. Вы можете отслеживать каждое действие.

В Python. Вот как получить желаемое действие:

https://docs.microsoft.com/en-us/python/api/azure-mgmt-datafactory/azure.mgmt.datafactory.operations.activityrunsoperations?view=azure-python#query -by-pipeline-run-resource-group- name - factory-name - run-id - filter-parameters - custom-headers-none - raw-false ---- operation-config-

Ниже показано, как получить время продолжительности azure активности фабрики данных:

https://docs.microsoft.com/en-us/python/api/azure-mgmt-datafactory/azure.mgmt.datafactory.models.activityrun?view=azure-python#variables

(есть переменная с именем duration_in_ms, вы можете использовать ее, чтобы получить время продолжительности запуск активности.)

Это использование Python для мониторинга конвейера:

https://docs.microsoft.com/en-us/azure/data-factory/monitor-programmatically#python

Вы можете создать приложение-функцию azure с таймером для отслеживания активности azure datafactory. Это документ azure функции timetrigger:

https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-timer?tabs=python

Основная идея c заключается в том, чтобы поместить код, который отслеживает конвейер, работает ли он больше, чем N минут в logi c теле функции azure timetrigger. Затем используйте статус функции azure, чтобы отразить, превышает ли время работы конвейера azure datafactory N часов.

Затем используйте событие тревоги функции azure. Тревожные события, поддерживаемые azure для функции azure, следующие: (Вы можете установить выходную привязку вашей функции azure.)

enter image description here

In azure portal, you can find the alert in this place:

enter image description here

введите описание изображения здесь

(Выберите сообщение электронной почты / SMS в качестве типа действия и укажите свой адрес электронной почты.)

...