Documentation

1C:Enterprise

Scheduled 1C jobs that report to the outside world.

1C scheduled jobs go quiet in the least noticeable way: after a configuration update or a server restart a job can stay disabled, and that surfaces at month-end close.

Common module
Процедура ОтправитьПинг(Суффикс = "", Тело = "") Экспорт

    Адрес = "https://ping.tickwatch.dev/YOUR-KEY" + ?(ПустаяСтрока(Суффикс), "", "/" + Суффикс);
    URI = ОбщегоНазначенияКлиентСервер.СтруктураURI(Адрес);

    Защищённое = НРег(URI.Схема) = "https";
    Соединение = Новый HTTPСоединение(
        URI.Хост, , , , ,
        10,
        ?(Защищённое, Новый ЗащищённоеСоединениеOpenSSL(), Неопределено));

    Запрос = Новый HTTPЗапрос(URI.ПутьНаСервере);
    Если НЕ ПустаяСтрока(Тело) Тогда
        Запрос.УстановитьТелоИзСтроки(Лев(Тело, 10000), КодировкаТекста.UTF8);
    КонецЕсли;

    Попытка
        Соединение.ВызватьHTTPМетод("POST", Запрос);
    Исключение
        // Мониторинг не должен ронять регламентное задание.
        ЗаписьЖурналаРегистрации("Tickwatch",
            УровеньЖурналаРегистрации.Предупреждение, , , ОписаниеОшибки());
    КонецПопытки;

КонецПроцедуры
In the scheduled job itself
Процедура ВыгрузкаВБанкКлиент() Экспорт

    Мониторинг.ОтправитьПинг("start");

    Попытка
        ВыполнитьВыгрузку();
        Мониторинг.ОтправитьПинг();
    Исключение
        Мониторинг.ОтправитьПинг("fail",
            ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
        ВызватьИсключение;
    КонецПопытки;

КонецПроцедуры
1C:Enterprise · Tickwatch