Журнал Событий
NOTE
Для использования Журнала Событий требуется MongoDB версии не ниже 4.4.
Журнал Событий (Event Log) осуществляет функции просмотра, фильтрации и поиска SNMP трапов, MQTT-сообщений, а также просмотра Истории состояний всех объектов системы.
- SNMP
- MQTT
- История состояний



Журнал Событий позволяет выполнять следующие действия над получаемыми данными:
| Кнопка/поле | Описание |
|---|---|
| Приостановить вывод – приостанавливает вывод новых строк данных. | |
| Кнопки переключения между отображением SNMP-Trap’ов, MQTT-сообщений и общей историей состояний. | | | Фильтр – осуществляет фильтрацию всех поступающих данных. Каждый тип событий имеет свой тип фильтра. | | | Включить фильтр – включает/выключает фильтрацию поступающих данных. | | | Количество сообщений – ограничивает число строк, отображаемых в Журнале событий. | | | Экспорт журнала с текущими фильтрами в формате .xls. Недоступно для журнала SNMP трапов. |
Режимы отображения
SNMP трапы
Агент может выступать в роли получателя SNMP-Trap’ов и отправлять данные на сервер. Журнал Событий реализует функции просмотра, фильтрации и поиска SNMP-Trap’ов от всех агентов, принимаемых сервером.

Строки в Журнале событий автоматически группируются, если SNMP-Trap’ы имеют одинаковые значения одновременно для:
- enterprise OID;
- agent Address;
- дополнительного поля с указанным OID.
NOTE
Подробнее об упомянутых полях и возможности "привязки" SNMP Trap’ов к объектам можно прочитать в статье SNMP Trap .
Контекстное меню
Контекстное меню появляется при нажатии правой кнопки мыши на любой строке Журнала событий.

Оно позволяет:
- назначить событию ответственного пользователя,
- удалить любое из событий (например, аварийное сообщение),
- временно изменить текст события (например, для добавления комментария к аварии).
Фильтр
Фильтр позволяет выбрать строки, соответствующие заданным условиям.

NOTE
Математические операторы сравнения используются для числовых значений; текстовые - для числовых и текстовых, без учёта регистра букв. Операторы
=и≠также могут использоваться с текстовыми значениями, регистр букв учитывается. При выборе текстового оператора сравнения, например,совпадает с, в качестве значения можно использовать регулярное выражение.
Кнопка позволяет добавить новое условие. Условия объединяются логическим И.
Чтобы удалить условие, нужно нажать кнопку справа от условия.
MQTT-сообщения
Сервер может получать сообщения от устройств, поддерживающих работу по протоколу MQTT. Журнал Событий реализует функции просмотра и фильтрации MQTT-сообщений из топиков, которые указаны в настройках MQTT-сенсоров соответствующих объектов.

NOTE
Подробнее о настройке MQTT-сенсора можно прочитать в статье MQTT-сенсор .
Фильтр
Фильтр позволяет выбрать строки, соответствующие заданным условиям.

NOTE
Математические операторы сравнения используются для числовых значений; текстовые - для числовых и текстовых, без учёта регистра букв. Операторы
=и≠также могут использоваться с текстовыми значениями, регистр букв учитывается. При выборе текстового оператора сравнения, например,совпадает с, в качестве значения можно использовать регулярное выражение.
Кнопка позволяет добавить новое условие. Условия объединяются логическим И.
Чтобы удалить условие, достаточно нажать кнопку справа от условия.
История состояний
Журнал Событий реализует функции просмотра истории состояний всех объектов системы:

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

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

Кнопка очищает соответствующее поле.
NOTE
Если используются фильтры по классам, тегам или имени объекта (доступно только как параметр адресной строки ), то временной период должен быть в пределах максимального временного периода, указанного в серверной конфигурации .
Параметры адресной строки
Фильтры и элементы интерфейса журнала событий можно настраивать с помощью параметров адресной строки.
Пример запроса с параметрами:
text
http://<saymon-server>/event-log.html?type=mqtt&header=off&logo=on&pauseButton=on&typeSelect=on&filterSection=on&exportSection=onСписок параметров адресной строки:
| Параметр | Описание | ||
|---|---|---|---|
| type | |||
Тип журнала, который будет отображаться по умолчанию. Можно изменить после загрузки страницы, если включены кнопки выбора типа журнала (typeSelect). |
Возможные значения:
snmp-trap – открывать режим SNMP трапы;
mqtt – открывать режим MQTT-сообщения;
state-history – открывать режим История состояний.
| | | | filter | Фильтры журнала. Зависят от выбранного типа журнала. Подробнее можно прочитать в разделе Фильтры. | | | | header | Настраивает отображение шапки страницы, содержащей элементы управления фильтрацией данных в таблицах.
on – включить шапку;
off – выключить шапку. Также, автоматически присваивает значение off всем параметрам отображения элементов интерфейса.
Чтобы перезаписать настройку отображения определённого элемента при выключенной шапке – например, выключить всё кроме логотипа – нужно выставить её в значение on:
http://<saymon-server>/event-log.html?header=off&logo=on
Порядок параметров не имеет значения.
| | Порядок параметров не имеет значения. | | | Порядок параметров не имеет значения. | | | | logo | Настраивает отображение логотипа.
on – включить логотип,
off – выключить логотип.
| | | | typeSelect | Настраивает отображение кнопки выбора типа журнала (SNMP, MQTT или История состояний).
on – включить кнопку,
off – выключить кнопку.
| | | | filterSection | Настраивает отображение секции расширенного фильтра.
on – включить кнопку,
off – выключить кнопку.
| | | | paramsSection | Настраивает отображение секции дополнительных параметров (Количество сообщений для журнала SNMP трапов).
on – включить секцию,
off – выключить секцию.
| | | | exportSection | Настраивает отображение кнопки экспортирования данных в формате .xls.
on – включить кнопку,
off – выключить кнопку.
| | | | pauseButton | Настраивает отображение кнопки "Приостановить вывод" ()
on – включить кнопку,
off – выключить кнопку.
| | | | hideColumns | Позволяет скрыть столбцы из таблицы. Список возможных значений указан в разделе Идентификаторы столбцов таблицы.
Этот параметр также применяется при экспорте таблицы. Скрытые столбцы не включаются в экспортированную таблицу.
| | Этот параметр также применяется при экспорте таблицы. Скрытые столбцы не включаются в экспортированную таблицу. | | | Этот параметр также применяется при экспорте таблицы. Скрытые столбцы не включаются в экспортированную таблицу. | | |
Фильтры
Журнал Событий позволяет указывать параметры фильтра не только через меню "Фильтр", но и в адресной строке.
NOTE
Фильтры, настроенные через пользовательский интерфейс, не применяются к адресной строке автоматически. При этом, фильтры заданные в адресной строке переносятся в меню "Фильтр", где их можно изменить.
text
http://<saymon-server>/event-log.html?filter=<тело фильтра>NOTE
Запрос с использованием фильтра может содержать и другие параметры адресной строки.
Фильтры журналов MQTT сообщений и SNMP трапов поддерживают поиск по нескольким полям одновременно. Для этого, в параметр filter нужно передать список фильтров:
text
http://<saymon-server>/event-log.html?type=mqtt&filter=[{"name":"payload.topic","value":{"_ct":"2"}}, {"name":"payload.message","value":{"_ct":"message text"}}]В запрос журнала истории состояний тоже можно передать список фильтров, но все, кроме первого, будут проигронированы.
Фильтры журнала истории состояний
Пример запроса с использованием фильтра:
text
http://<saymon-server>/event-log.html?filter={"stateId":[1,3],"from":1599469080000,"to":1694077090252}Фильтр поддерживает следующие параметры:
| Параметр | Описание |
|---|---|
from | |
| Время начала выборки (в формате времени Unix, в милисекундах). | |
to | |
| Время конца выборки (в формате времени Unix, в милисекундах). | |
stateId | |
| ID или список ID состояний. | |
classId | |
| ID или список ID классов объектов. | |
tagId | |
| ID или список ID тегов. | |
entityId | |
| ID объекта или связь. Cкрыт в интерфейсе. | |
entityType | |
ID типа объекта (1 – объект, 2 – связь). Cкрыт в интерфейсе. | |
entityName | |
| Фильтр по частичному совпадению имени. Cкрыт в интерфейсе. | |
Фильтры журнала MQTT сообщений
Пример фильтра журнала MQTT сообщений:
text
http://<saymon-server>/event-log.html?filter=[{"name":"payload.topic","value":{"_ct":"2"}}]| Параметр | Описание |
|---|---|
name | |
| Название переменной, по значению которой нужно фильтровать журнал. У MQTT сообщений есть следующие переменные: |
payload.topic – топик MQTT сообщения;
payload.message – тело MQTT сообщения.
| | value | Фильтр значения указанной переменной в следующем формате:
"value":{<оператор>:<значение>}
Поддерживаемые операторы:
_ct – Содержит;
_nct – Не содержит;
_eq – Равен;
_neq – Не равно;
_m – Совпадает с.
|
Фильтры журнала SNMP трапов
Пример фильтра журнала SNMP трапов:
text
http://<saymon-server>/event-log.html?filter=[{"name":"payload.text","value":{"_ct":"34"}}]| Параметр | Описание |
|---|---|
name | |
| Название переменной, по значению которой нужно фильтровать журнал. У MQTT сообщений есть следующие переменные: |
payload.trapOid
payload.text
payload.senderAddress
| | value | Фильтр значения указанной переменной в следующем формате:
"value":{<оператор>:<значение>}
Поддерживаемые операторы:
_ct – Содержит;
_nct – Не содержит;
_eq – Равен;
_neq – Не равно;
_m – Совпадает с.
|
Идентификаторы столбцов таблицы
NOTE
Несуществующие или некорректные идентификаторы столбцов при отображении страницы игнорируются.
Список идентификаторов столбцов для таблицы История состояний:
time(Время)object(Объект)state(Состояние)reason(Причина)data(Данные)comment(Комментарий)
Список идентификаторов столбцов для таблицы SNMP трапы:
count(Количество)timestamp(Время)level(Критичность)entitylink(Объект на схеме)payloadsenderaddress(Адрес отправителя)payloadtrapoid(OID трапа)payloadtext(Текст)payloadbindings(Данные)assignee(Ответственный)
Список идентификаторов столбцов для таблицы MQTT-сообщения:
entity(Объект/связь)topic(Топик)message(Сообщение)