Оповещения на почту или в мессенджер о неудачном выполнении задач

0 голосов
Ildar Bulatov в категории Как сделать...
Добрый день!

При помощи планировщика задач была заведена задача, отвечающая за ежедневную загрузку данных в хранилище, и нашей команде необходимо получать оповещение на почту или в мессенджер в случае падения загрузки по причине какой-либо ошибки.

В интерфейсе планировщика нет возможности настроить оповещение заинтересованных пользователей о статусе выполнения задачи.

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

Использование утилиты BatchLauncher и стороннего планировщика мы рассматриваем как последний вариант.

Подскажите пожалуйста, что можно предпринять для решения этой задачи.

Ответы: 2 шт.

+1 голос
alexey.arustamov

В версии 7.3 можно учитывать статусы выполнения.

Ildar Bulatov
Алексей, спасибо! Рассмотрю этот вариант
+1 голос
vitaliy.tatarskih
Если речь идет о логировании внутри сценария и требуется логировать успешность/неуспешность выполнения его отдельных этапов/подмоделей, то это можно сделать с помощью узла цикл с включенной опцией "Игнорировать ошибки". Например, у вас в сценарии есть подмодель, которую надо контролировать. Вы настраиваете цикл на эту подмодель, задаете количество итераций = 1 и выставляете флаг "Игнорировать ошибки". Теперь в сценарии вместо этой подмодели будет выполняться настроенный на нее цикл, который на выходе будет содержать дополнительный порт "Статус выполнения итераций". В этом порту будет выводиться информация об успешности/неуспешности выполнения заданной в подмодели логики, в том числе описание ошибки, если она будет возникать. Используя эту информацию и последующий узел "Условие" вы можете продолжить выполнение сценария по определенной ветке: при успешном выполнении контролируемого этапа (подмодели) далее выполняется одна ветка, при неуспешном - другая, в которой, например, осуществляется отправка сообщения (или другое необходимое логирование или действие).
Ildar Bulatov
Виталий, спасибо! Как раз то, что нужно
...