Из-за временных ограничений на территории РФ наблюдаются проблемы с оплатой. Если платёж не проходит, оставьте запрос в службу поддержки.Служба поддержки работает 24/7 — мы всегда на связи по вопросам хостинга и серверов.Открыт прием заявок на аренду выделенных серверов и размещение оборудования в дата-центре.Напоминаем: рекомендуем включить резервное копирование для дополнительной защиты данных.Доступна новая линейка VPS/VDS с NVMe-дисками и увеличенной производительностью.Технические работы на части серверов завершены. Все сервисы работают в штатном режиме.
Оповещения об ошибках на почту, по СМС и в мессенджеры

МОДУЛЬ ДЛЯ 1С-БИТРИКС

Павел Шулаев

Оповещения об ошибках на почту, по СМС и в мессенджеры

Модуль Rover Notifier интегрируется со стандартным обработчиком исключений Bitrix для отправки уведомлений администратору о необработанных ошибках и критических сбоях (fatal error). Уведомления доставляются по электронной почте, через SMS или в мессенджеры, используя уже настроенные на сайте почтовые события и провайдер SMS-сообщений.

Технические данные

Опубликовано
12.08.2026
Обновлено
28.10.2026
Версия
1.1.0
Установлено
Менее 50 раз
Адаптивность
Нет
Поддержка Композита
Нет
Совместимо с Сайты24
Нет
Разработчик
Павел Шулаев

Что умеет решение

Модуль Rover Notifier интегрируется со стандартным обработчиком исключений Bitrix для отправки уведомлений администратору о необработанных ошибках и критических сбоях (fatal error). Уведомления доставляются по электронной почте, через SMS или в мессенджеры, используя уже настроенные на сайте почтовые события и провайдер SMS-сообщений. Предоставленный механизм доступен для использования в пользовательском коде: из модуля или скрипта можно инициировать отправку собственных оповещений в выбранный канал связи.

Модуль не заменяет системный лог ошибок Bitrix, а дополняет его, регистрируясь как дополнительный обработчик в параметре exception_handling.value.log. При возникновении необработанного исключения или критической ошибки формируется и отправляется уведомление через стандартные события Bitrix, включая CEvent и SMS-событие модуля messageservice. Сам модуль не рассылает письма напрямую; он лишь инициирует штатное событие, поэтому канал доставки полностью зависит от существующей конфигурации сайта: почтового шаблона, SMS-шлюза или интеграции с мессенджером через модуль messageservice.

Модуль Rover Notifier обеспечивает отправку уведомлений об ошибках через email, SMS и мессенджеры. Уведомления по электронной почте и по SMS/мессенджерам реализованы как два независимых события, которые можно включать, отключать и настраивать отдельно стандартными средствами Bitrix. Доставка в Telegram, WhatsApp и MAX через событие SMS настраивается в зависимости от установленных коннекторов модуля «Сервис уведомлений».

Система группирует повторяющиеся ошибки, чтобы не засорять почтовый ящик дубликатами. Ошибки накапливаются в очереди и отправляются одним письмом с указанием количества повторений через заданный интервал (по умолчанию — раз в час). Ошибки считаются одинаковыми при совпадении класса, текста, кода, имени файла, номера строки, типа, источника и набора дополнительных полей. Ошибка из одного модуля не объединяется с ошибкой из другого, даже если они идентичны.

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

Интервал группировки ошибок настраивается в административной панели модуля без необходимости изменения кода.

В уведомлениях чётко указывается источник ошибки: ядро, конкретный модуль (по его идентификатору) или код сайта. Модуль определяет место возникновения сбоя автоматически.

Отображается понятный тип ошибки в читаемом виде (FATAL, UNCAUGHT_EXCEPTION и другие), а не служебный числовой код.

Модуль готов к работе сразу после установки. В процессе инсталляции автоматически создаются почтовые и SMS-типы событий, а также шаблоны с готовым набором плейсхолдеров: текст ошибки, источник, тип, имя файла, номер строки, стек вызовов и счётчик повторов. Пользователю остаётся настроить только получателя SMS.

Предоставлен публичный API для разработчиков: метод Rover\Notifier\Notifier::report() позволяет отправлять произвольные сообщения или исключения из кода сайта и других модулей через те же каналы. Можно добавлять любые дополнительные поля для шаблона. Такие сообщения подчиняются общим настройкам модуля и участвуют в группировке наравне с перехваченными ошибками.

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

Модуль Rover Notifier отправляет уведомления об ошибках на почту, по СМС и в мессенджеры. В контексте вызова можно указать собственный почтовый и СМС-событие, а также идентификатор сайта (EVENT_NAME, SMS_EVENT_NAME, SITE_ID). Уведомления модуля используют свой шаблон и своих адресатов, не смешиваясь с ошибками основного сайта. Ключ IMMEDIATE отправляет сообщение немедленно; он требуется коду, который уже сгруппировал данные и сформировал готовую сводку.

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

Важная инженерная особенность: модуль никогда не прерывает основной обработчик исключений. Любая ошибка на стороне самого Rover Notifier (например, недоступность базы данных или отсутствие настроек СМС-шаблона) перехватывается и гасится внутри модуля. Сайт продолжает работать в штатном режиме, как будто уведомитель не установлен.

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

Очередь группировки сообщений хранится в отдельной таблице через ORM Bitrix. Агент обрабатывает её по расписанию и очищает после завершения работы. Дополнительные поля, передаваемые из кода вместе с сообщением, сохраняются в очереди и доходят до шаблона сводного уведомления.

Тип ошибки определяется по штатной классификации обработчика исключений Bitrix, а не по собственной системе приоритетов. Поэтому уровень «критичности» соответствует тому же значению, что и в самой платформе.

Модуль не создаёт собственную инфраструктуру доставки сообщений, а использует существующие на проекте каналы. Это исключает конфликты с текущими интеграциями и позволяет легко внедрять решение в проекты любого масштаба.

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

Для авторов собственных модулей и интеграций инструмент выступает готовым транспортным каналом оповещений: не требуется создавать собственные события, очереди или механизмы группировки, достаточно выполнить один вызов из кода.

Требования к среде:

Система «1С-Битрикс: Управление сайтом» с активным модулем main. Дополнительные лицензии на другие модули ядра не требуются.

Версия PHP 8.2 и выше.

Настройка каналов доставки:

Для отправки уведомлений по электронной почте дополнительные компоненты не нужны; используется стандартный механизм CEvent и уже настроенный почтовый транспорт сайта.

Для отправки SMS или сообщений в мессенджеры (Telegram, WhatsApp, MAX и другие) необходим модуль «Сервис уведомлений» (messageservice) с подключенным провайдером. При отсутствии этого модуля система корректно работает только в режиме отправки по почте, ошибок не возникает.

Механизм группировки:

Группировка уведомлений осуществляется через стандартный агентский механизм платформы «Битрикс». Настройка отдельного крона не требуется.

«Оповещения об ошибках на почту, по СМС и в мессенджеры» можно подключить с помощью General iT: установить модуль, настроить его и убедиться, что интеграция работает корректно.

ИСТОРИЯ ОБНОВЛЕНИЙ

Что нового

2 выпусков
1.1.0 (28.10.2026)Последнее обновление

Модуль научился работать не только как перехватчик ошибок, но и как транспорт для оповещений вашего кода — со своими событиями, шаблонами и получателями.

Оповещения из кода без перехвата ошибок — новая настройка разрешает Notifier::report(), когда перехват ошибок сайта выключен. Раньше одно было невозможно без другого, и получателям уходили ещё и fatal error ядра.

Свой канал оповещений — в контексте вызова можно указать собственное почтовое и SMS-событие и сайт: ключи EVENT_NAME, SMS_EVENT_NAME, SITE_ID. У канала появляются свой шаблон и свои получатели, не смешанные с ошибками сайта.

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

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

Источник сообщения в уведомлении — плейсхолдер #SOURCE# показывает, откуда пришло сообщение: ядро, конкретный модуль по его идентификатору или код сайта. Определяется автоматически, в том числе для вызовов из кода.

Детали ошибки из кода — CODE, FILE, LINE и TRACE можно передать вместе с сообщением. Незаполненные поля подставляются как «не указано», и в письме не остаётся пустых мест и нераскрытых плейсхолдеров.

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

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

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

Исправлена подпись типа — произвольная метка, переданная из кода, отображалась в письме как UNCAUGHT_EXCEPTION вместо самой метки.

Исправлен вызов Notifier::handle() без второго аргумента — на PHP 8 он завершался ошибкой типа.

1.0.1 (22.10.2026)

Исправлены найденные незначительные ошибки и неточности

ОПЫТ ПОЛЬЗОВАТЕЛЕЙ

Отзывы о решении

Как решение работает в реальном проекте? Поделись опытом — помоги другим с выбором.

Твой опыт может стать первым

На git.ru ещё нет отзывов об этом решении. Расскажи, что понравилось и что можно улучшить.

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

Открыто для каждого клиентаДостаточно войти в аккаунт. Ключ необязателен, все отзывы проходят модерацию.

ТВОЙ ОПЫТ ВАЖЕН

Твой отзыв

ИНФРАСТРУКТУРА ПРОЕКТА

Где будет работать твой сайт

ПЕРЕД ЗАКАЗОМ

Разберёмся в деталях.

Бесплатна ли установка?
Само решение распространяется бесплатно. Услуги по установке, настройке и доработке согласуются отдельно. Для работы нужна совместимая платформа и подходящая лицензия на неё.
Как проверить совместимость?
Сверь подходящие редакции и версию решения в технических данных с твоим проектом. Перед установкой на работающий сайт рекомендуем резервную копию и проверку в тестовой среде.
Поможете с внедрением?
Поможем установить модуль, проверить настройки и его работу в твоём проекте. Совместимость с другими доработками и объём работ оценим перед началом.

GENERAL iT

Обсудим твою задачу

Получатель: ООО «Дженерал Ай Ти Рус»

1C-BITRIX

Установить решение

Можно ввести домен с https:// или без. В новой вкладке откроется установщик в панели управления твоего сайта.

Скриншоты решения

Скриншот решения