Система журналирования AgavaSCADA/AgavaPLC: различия между версиями
| Строка 78: | Строка 78: | ||
Процент уровня сигнала является условной шкалой силы сигнала, а не оценкой качества связи или вероятности доставки сообщения. Успешное завершение отправки модемом также не является подтверждением доставки SMS на телефон получателя. | Процент уровня сигнала является условной шкалой силы сигнала, а не оценкой качества связи или вероятности доставки сообщения. Успешное завершение отправки модемом также не является подтверждением доставки SMS на телефон получателя. | ||
| + | |||
| + | [[Категория:AgavaSCADA/AgavaPLC]] | ||
Текущая версия на 09:41, 13 октября 2026
Система журналирования предназначена для управления регистрацией и хранением событий в журналах событий или других хранилищах. В журнал записываются все системные события и события, генерируемые с помощью системы тревог, которые соответствуют выбранному уровню сообщений.
Для ведения журналов используются узлы типа "Логгер".
1 Порядок настройки системы
Порядок настройки системы журналирования следующий:
- Добавить и настроить систему тревог для генерации событий.
- Добавить в проект систему журналирования. Для этого нажать ПКМ по узлу «Станция» в дереве проекта, затем выбрать «Добавить узел» - «Система» - «Система журналирования».
- Добавить в систему журналирования логгер. Для этого нажать ПКМ по узлу «Система архивации» в дереве проекта, затем нажать «Добавить узел» и выбрать нужный логгер.
- Настроить параметры логгера (см. разделы ниже).
2 Логгер SQLite
Логгер SQLite предназначен для сохранения событий, возникающих в ходе исполнения прикладной программы в СУБД SQLite.
Логгер позволяет настраивать срок хранения событий, уровень сохраняемых событий и включать режим разбиения базы данных на отдельные файлы, содержащие данные только за одни сутки.
Информацию о событиях в базе данных, которую ведет логгер, можно просмотреть с помощью виджета "Список событий".
3 Логгер файловый
Логгер файловый предназначен для сохранения журналов событий в текстовых файлах на накопителе. Логгер имеет минимальное количество настроек, и обычно используется для сохранения журнала событий в случае необходимости отладки работы прикладной программы без среды разработки.
4 Логгер SMS
Логгер SMS предназначен для информирования о событиях с помощью SMS через встроенный в контроллер GPRS-субмодуль (при наличии) или внешний GPRS-модем.
4.1 Принцип работы
- Логгер принимает возникающие события и фильтрует их по установленному уровню событий и выбранным группам.
- События, прошедшие фильтрацию, форматируются согласно заданному шаблону сообщения.
- Подготовленные сообщения помещаются в очередь и отправляются через подключённый модем на телефонные номера, записанные в телефонной книге SIM-карты.
- При ошибке отправки сообщение или его неотправленная часть остаётся в очереди для повторной отправки. При повторяющихся ошибках логгер выполняет переинициализацию модема.
4.2 Настройка
Для подключения модема необходимо указать последовательный порт, скорость обмена, чётность и количество стоп-битов. Настройки должны соответствовать параметрам модема.
В настройках логгера задаются уровень событий, группы событий и шаблон SMS. При необходимости можно указать дополнительные команды инициализации модема.
Шаблон сообщения может содержать следующие обозначения:
- $$et — текст события;
- $$ed — дата и время события;
- $$el — уровень события.
Шаблон по умолчанию: $$ed $$el: $$et.
Номера получателей необходимо предварительно записать в телефонную книгу SIM-карты. В текущей реализации логгер считывает записи с номерами 1–9. Список считанных номеров отображается в read-only свойстве «Телефонная книга» (Phonebook). Если номера не найдены, отправка сообщений невозможна.
4.2.1 Длинные кириллические сообщения
Логгер поддерживает отправку длинных кириллических сообщений:
- сообщение длиной до 70 символов отправляется одним SMS;
- более длинное сообщение разбивается на части, содержащие до 67 символов каждая;
- части снабжаются служебной информацией для объединения на телефоне получателя.
В указанную длину входит весь сформированный текст, включая дату, время, уровень события и постоянный текст шаблона. Максимальное количество частей одного сообщения — 255. При превышении этого ограничения логгер возвращает ошибку.
4.3 Контроль состояния
Логгер автоматически обновляет следующие свойства, доступные только для чтения:
| Свойство | Идентификатор | Тип | Описание |
|---|---|---|---|
| Модем подключен | ModemOnline | Bool | true, если модем отвечает на команды; false, если ответ отсутствует или возникла ошибка связи с модемом. |
| Регистрация в сети | RegistrationOk | Bool | true, если подтверждена регистрация модема в сети, в том числе в роуминге; false, если регистрация не подтверждена. |
| Уровень сигнала | SignalLevel | Int | Условный уровень сигнала от 0 до 100%. Значение -1 означает, что уровень неизвестен или получить его не удалось. |
Регистрация в сети и уровень сигнала проверяются примерно раз в минуту. Состояние ModemOnline обновляется по ответам на рабочие команды; дополнительно логгер проверяет связь отдельной командой после инициализации и примерно раз в минуту.
Ответ модема с ошибкой выполнения команды также подтверждает, что модем отвечает. Поэтому ModemOnline = true не означает успешную регистрацию в сети или успешную отправку SMS.
Процент уровня сигнала является условной шкалой силы сигнала, а не оценкой качества связи или вероятности доставки сообщения. Успешное завершение отправки модемом также не является подтверждением доставки SMS на телефон получателя.