Вводные
1. Внешняя обработка с возможностью запуска в фоновом задании (обмен с внешней системой)
2. Нужно получить уведомление если обработка перестала работать, показателями отказа могут являться:
2.1 Некорректные данные внешнего сервиса
2.2 Отсутствие выполнения (отказ на уровне рег. заданий, настроек)
Реализация
Настройка со стороны сервиса
Использовать сервис мониторинга, выбрал https://healthchecks.io/ потому что
- функционально подходит
- есть бесплатный тариф (в ограничения вхожу)
- есть уведомления на почту и телеграмм
- не нужно разворачивать свою систему
Если знаете хорошие альтернативы - пишите, добавлю в статью, zabbix и подобное применять на небольших клиентах не вижу смысла, стоимость настройки не окупается.
В личном кабинете создаю поверку и задаю имя
Указываю периоды проверки
- Период (Period) - Ожидаемое время между пингами.
- Время уведомления (Grace Time) - Через какое время поле ошибки по проверке отправлять уведомление.
Получаю ключ проверки (на примере он 318ee61e-5b38-44a3-af18-f165efda60d3), который дальше буду использовать в коде 1С.
Для проекта определяем параметры интеграции
При добавлении определяем на какое событие (up, down) будет отправляться уведомление
При добавлении проверки все варианты интеграции включены, в настройках проверки ими можно управлять.
После добавления можно сделать запрос, на адрес проверки (для этого использую postman)
После запуска проверка перейдет в активное состояние
При отсутствии запроса за Period переходит в состояние
После прохождения Grace Time переходит в состояние
И приходит уведомление на почту
Настройка со стороны 1С
В обработку добавляю конструкцию вида
Реализацию GET () можно
- написать самому (документация)
- взять в //infostart.ru/public/709325/ (GitHub)
Передача списка проверок (проекта) заказчику
Для передачи нужно в настройках проекта
Использовать transfer
В качестве принимающей стороны может быть Member (участник) этого проекта.
Итог
Относительно просто можно организовать довольно эффективное решение для мониторинга состояния выполнения обработок.
Благодарю за внимание.