Система журналирования AgavaSCADA/AgavaPLC: различия между версиями
| (не показаны 2 промежуточные версии этого же участника) | |||
| Строка 17: | Строка 17: | ||
Логгер файловый предназначен для сохранения журналов событий в текстовых файлах на накопителе. Логгер имеет минимальное количество настроек, и обычно используется для сохранения журнала событий в случае необходимости отладки работы прикладной программы без среды разработки. | Логгер файловый предназначен для сохранения журналов событий в текстовых файлах на накопителе. Логгер имеет минимальное количество настроек, и обычно используется для сохранения журнала событий в случае необходимости отладки работы прикладной программы без среды разработки. | ||
===Логгер SMS=== | ===Логгер SMS=== | ||
| − | Логгер SMS предназначен для | + | Логгер SMS предназначен для информирования о событиях с помощью SMS через встроенный в контроллер GPRS-субмодуль (при наличии) или внешний GPRS-модем. |
| − | Принцип работы | + | ==== Принцип работы ==== |
| − | #Логгер принимает возникающие события | + | # Логгер принимает возникающие события и фильтрует их по установленному уровню событий и выбранным группам. |
| − | #События, прошедшие фильтрацию, форматируются согласно | + | # События, прошедшие фильтрацию, форматируются согласно заданному шаблону сообщения. |
| − | # | + | # Подготовленные сообщения помещаются в очередь и отправляются через подключённый модем на телефонные номера, записанные в телефонной книге SIM-карты. |
| + | # При ошибке отправки сообщение или его неотправленная часть остаётся в очереди для повторной отправки. При повторяющихся ошибках логгер выполняет переинициализацию модема. | ||
| + | |||
| + | ==== Настройка ==== | ||
| + | Для подключения модема необходимо указать последовательный порт, скорость обмена, чётность и количество стоп-битов. Настройки должны соответствовать параметрам модема. | ||
| + | |||
| + | В настройках логгера задаются уровень событий, группы событий и шаблон SMS. При необходимости можно указать дополнительные команды инициализации модема. | ||
| + | |||
| + | Шаблон сообщения может содержать следующие обозначения: | ||
| + | |||
| + | * $$et — текст события; | ||
| + | * $$ed — дата и время события; | ||
| + | * $$el — уровень события. | ||
| + | |||
| + | Шаблон по умолчанию: $$ed $$el: $$et. | ||
| + | |||
| + | Номера получателей необходимо предварительно записать в телефонную книгу SIM-карты. В текущей реализации логгер считывает записи с номерами 1–9. Список считанных номеров отображается в read-only свойстве «Телефонная книга» (Phonebook). Если номера не найдены, отправка сообщений невозможна. | ||
| + | |||
| + | ===== Длинные кириллические сообщения ===== | ||
| + | Логгер поддерживает отправку длинных кириллических сообщений: | ||
| + | |||
| + | * сообщение длиной до 70 символов отправляется одним SMS; | ||
| + | * более длинное сообщение разбивается на части, содержащие до 67 символов каждая; | ||
| + | * части снабжаются служебной информацией для объединения на телефоне получателя. | ||
| + | |||
| + | В указанную длину входит весь сформированный текст, включая дату, время, уровень события и постоянный текст шаблона. Максимальное количество частей одного сообщения — 255. При превышении этого ограничения логгер возвращает ошибку. | ||
| + | |||
| + | ==== Контроль состояния ==== | ||
| + | Логгер автоматически обновляет следующие свойства, доступные только для чтения: | ||
| + | {| class="wikitable" | ||
| + | |+ | ||
| + | !Свойство | ||
| + | !Идентификатор | ||
| + | !Тип | ||
| + | !Описание | ||
| + | |- | ||
| + | |Модем подключен | ||
| + | |ModemOnline | ||
| + | |Bool | ||
| + | |true, если модем отвечает на команды; false, если ответ отсутствует или возникла ошибка связи с модемом. | ||
| + | |- | ||
| + | |Регистрация в сети | ||
| + | |RegistrationOk | ||
| + | |Bool | ||
| + | |true, если подтверждена регистрация модема в сети, в том числе в роуминге; false, если регистрация не подтверждена. | ||
| + | |- | ||
| + | |Уровень сигнала | ||
| + | |SignalLevel | ||
| + | |Int | ||
| + | |Условный уровень сигнала от 0 до 100%. Значение -1 означает, что уровень неизвестен или получить его не удалось. | ||
| + | |} | ||
| + | Регистрация в сети и уровень сигнала проверяются примерно раз в минуту. Состояние ModemOnline обновляется по ответам на рабочие команды; дополнительно логгер проверяет связь отдельной командой после инициализации и примерно раз в минуту. | ||
| + | |||
| + | Ответ модема с ошибкой выполнения команды также подтверждает, что модем отвечает. Поэтому ModemOnline = true не означает успешную регистрацию в сети или успешную отправку 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 на телефон получателя.