1С · регламентные задания

Мониторинг регламентных заданий 1С

Контролируйте обмены, выгрузки и регламентные задания 1С через HTTPS-сигналы. Получайте уведомления об ошибке, зависании и пропущенном выполнении.

Free: 5 мониторов, Telegram и email.

Пример уведомления

● 1c-catalog-exchange

Обмен не прислал завершение. Проверьте регламентное задание и журнал регистрации.

Открыть монитор

Демонстрационные данные. Вид и состав сообщения зависят от канала и типа события.

Когда это нужно

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

Как подключить

  1. 1

    Создайте отдельный монитор для обмена. Перенесите расписание и часовой пояс; для нерегулярного расписания выберите подходящий интервальный контроль.

  2. 2

    Добавьте процедуры в серверный общий модуль. Замените ВыполнитьОбмен() своей операцией, а {{PING}} — URL монитора. Точку входа регламентного задания направьте на ВыполнитьЗадание.

  3. 3

    На тестовой базе проверьте завершение, исключение и отсутствие запуска. Настройте максимальную длительность и Telegram или email.

Готовый пример

Шаблон для адаптации разработчиком 1С 8.3, без зависимости от БСП. Используется стандартный HTTPS-адрес пинга Tickwatch на порту 443 без дополнительных параметров. Серверу нужны интернет, доверенные сертификаты и при необходимости прокси в HTTPСоединение. Пример не реализует бизнес-операцию вашей конфигурации.

Общий модуль Мониторинг
Процедура ОтправитьСигнал(Суффикс, Идентификатор)
    Попытка
        // Standard HTTPS ping URL on port 443, without query parameters.
        Адрес = "https://ping.tickwatch.dev/YOUR_PING_KEY";
        БезСхемы = Сред(Адрес, 9);
        Разделитель = СтрНайти(БезСхемы, "/");
        Хост = Лев(БезСхемы, Разделитель - 1);
        Путь = Сред(БезСхемы, Разделитель) + Суффикс
            + "?rid=" + Идентификатор;
        Защита = Новый ЗащищенноеСоединениеOpenSSL(
            , Новый СертификатыУдостоверяющихЦентровОС);
        Соединение = Новый HTTPСоединение(Хост, 443, , , , 5, Защита);
        Запрос = Новый HTTPЗапрос(Путь);
        Соединение.ВызватьHTTPМетод("POST", Запрос);
    Исключение
        // Signal delivery must not interrupt the business operation.
    КонецПопытки;
КонецПроцедуры

Процедура ВыполнитьЗадание() Экспорт
    Идентификатор = Строка(Новый УникальныйИдентификатор);
    ОтправитьСигнал("/start", Идентификатор);
    Попытка
        ВыполнитьОбмен(); // Replace with your business operation.
        ОтправитьСигнал("", Идентификатор);
    Исключение
        ОтправитьСигнал("/fail", Идентификатор);
        ВызватьИсключение;
    КонецПопытки;
КонецПроцедуры
Запуск или настройка
// Entry point in the scheduled job metadata:
Мониторинг.ВыполнитьЗадание

Что проверить перед запуском

  • Исходное исключение выбрасывается повторно: мониторинг не превращает неудачный обмен в успешное задание. Не скрывайте ошибки внутри ВыполнитьОбмен.

  • Сигналы не содержат документов, имён клиентов и текста исключений. Один UUID связывает начало и завершение конкретного выполнения.

  • Проверьте блокировку заданий после обслуживания и фактический запуск в вашем режиме работы базы. Для файлового режима отдельно проверьте работу без пользовательского сеанса.

Частые вопросы

Tickwatch получает доступ к базе 1С?

Здесь нужны только исходящие HTTPS-запросы. Доступ к базе, пользователям и документам Tickwatch не предоставляется.

Можно вставить код без адаптации?

Разработчик должен выбрать допустимое место подключения — например, расширение — и заменить бизнес-вызов. Сначала проверьте это на тестовой базе.

Проверьте первый запуск, пока задача ещё работает

Создайте монитор, подставьте свой URL пинга и убедитесь, что приходят сигналы и уведомления.

Мониторинг регламентных заданий 1С · Tickwatch