Модуль Генератор внутренних событий для программ-логгеров
Последняя версия: 5.0.1 build 1126. November 28, 2025.
Плагин Events Generator является дополнительным модулем для наших логгеров данных. Он добавляет гибкую фильтрацию и создание событий в вашу конфигурацию. Вместо отправки каждого пакета на вывод вы можете задать простые правила, которые определяют, что делать с каждым пакетом. Плагин может игнорировать данные, экспортировать их или создавать внутренние события, которые запускают другие модули. Это значительно упрощает реакцию на важные значения, необычные сообщения или определенные шаблоны в потоках данных.
Типичные варианты использования включают автоматические уведомления и условный экспорт данных. Например, когда устройство отправляет аварийное сообщение с определенным кодом ошибки, плагин может сгенерировать событие и передать его в модуль Events Notification. Этот модуль затем может отправить письмо инженеру по обслуживанию, записать сообщение в файл журнала или запустить сценарий во внешем скрипте.
Настройка плагина проста. Вы задаете одно или несколько правил. Каждое правило проверяет условие и затем выполняет действие, если условие истинно. Условие может анализировать весь пакет данных, используя переменную парсера FULL_DATA_PACKET, или проверять отдельную переменную, например значение температуры или флаг состояния.
Когда правило срабатывает, плагин выполняет одно из трех действий. Он может игнорировать пакет, экспортировать его или создать событие. Действие "Игнорировать" останавливает дальнейшую обработку данного пакета. Действие "Экспортировать" передает пакет следующему модулю фильтрации или экспорта. Действие "Генерировать событие" создает внутреннее событие с заданным именем и прикрепляет к нему все элементы парсера из текущего пакета.
Пример для Advanced Serial Data Logger
Для примера, есть устройство, которое отправляет строки состояния каждые 10 секунд. Строка может выглядеть так:
DATE_TIME_STAMP=2025-01-02 08:00:00; DEVICE_ID=UPS01; STATUS=OK; VOLTAGE=230.5; TEMP=32.1 DATE_TIME_STAMP=2025-01-02 08:00:10; DEVICE_ID=UPS01; STATUS=WARNING; VOLTAGE=225.3; TEMP=38.4 DATE_TIME_STAMP=2025-01-02 08:00:20; DEVICE_ID=UPS01; STATUS=ALARM; VOLTAGE=210.2; TEMP=45.7
Парсер в Advanced Serial Data Logger может извлекать такие переменные, как DATE_TIME_STAMP, DEVICE_ID, STATUS, VOLTAGE и TEMP. Затем плагин Events Generator проверяет правила на основе этих элементов.
Например, вы можете задать правило, которое проверяет поле STATUS. Когда значение равно "ALARM", правило срабатывает, и плагин создает событие с именем UPS_ALARM. Все элементы парсера из пакета добавляются к событию. Модуль Events Notification получает, обрабатывает этого событие и может использовать эти элементы в шаблоне:
Тема: UPS alarm from %DEVICE_ID% at %DATE_TIME_STAMP%
Тело письма (шаблон):
Status: %STATUS%
Voltage: %VOLTAGE%
Temperature: %TEMP%
Full packet: %FULL_DATA_PACKET%
Одновременно вы можете использовать другое правило, чтобы игнорировать обычные сообщения "OK" и экспортировать в базу данных только пакеты с состояниями "WARNING" и "ALARM". Строка экспортируемого CSV может выглядеть так:
2025-01-02 08:00:10,UPS01,WARNING,225.3,38.4 2025-01-02 08:00:20,UPS01,ALARM,210.2,45.7
Ключевые возможности
- Простая фильтрация на основе правил для полного пакета или отдельных элементов парсера.
- Поддержка условий в виде обычного текста и регулярных выражений с учетом регистра.
- Три варианта действий для правил: игнорировать, экспортировать или генерировать внутренние события.
- Тесная интеграция с Events Notification и другими модулями для отправки писем, запуска сценариев и оповещений.
- Простое окно настройки с графическим интерфейсом и возможностью включения или отключения каждого правила.
Итог
Плагин Events Generator добавляет гибкое, основанное на правилах управление в вашу систему регистрации данных. Он помогает фильтровать пакеты, запускать действия и сосредоточиться на самом важном в ваших потоках данных. Вместе с другими модулями он формирует мощное и удобное для сопровождения решение для мониторинга и оповещения.
Модуль-фильтр "Event generator" для наших логгеров (например, Advanced Serial Data Logger) позволяет генерировать внутренние события программы при обнаружении какой-либо метки в принятых данных. Затем данное событие может быть обработано с помощью модулей обработки событий.
Например, "Events notification" может отослать электронное сообщение при обнаружении сигнала тревоги в принятых данных.
Дополнительной функцией модуля является фильтрация данных по наличию или отсутствию указанной сигнатуры.
Как включить модуль
На рисунке ниже вы можете увидеть, как включить данных модуль в настройках программы на странице "Модули".

Рис.1. Выбор модуля.
Как настроить модуль
На рисунке ниже показан пример настроек модуля. Вы можете ознакомиться с файлом справки по ссылке выше, для получения более подробной информации.

Рис.2. Настройка модуля.
Другие похожие модули:
Все модули | Мертвая зона | Выражения (Expressions) | Объединение данных (агрегация) | Фильтр цифровых сигналов | Скрипты | Генератор событий и фильтр | Перенаправление данных | Перенаправление данных на TCP сервер | Отсутствие данных, пропадание связи | Протоколирование сигналов тревоги | Кодирование данных | Данные из списка | Обработка отказа (Failover) | Суммарная статистика