Логирование
В серверных и настольных редакциях платформы формируется лог-файл — журнал регистрации, в котором фиксируется выполнение каждого узла, что позволяет в случае возникновения ошибки выявить ее местоположение и возможную причину.
Правила формирования лог-файла (имя файла, его максимальный размер, уровень логирования и др.) задаются параметрами логирования.
Примечание: До версии 6.5.0 используется кодировка ANSI, соответствующая локали пользователя, из-под которого запущен Loginom Server. Начиная с версии 6.5.0 — UTF8.
Уровни логирования
Уровень логирования — параметр, который позволяет контролировать, какие действия, происходящие в программе, нужно записывать в зависимости от требуемой детализации процесса. С увеличением уровня логирования детализация и занимаемая память будут увеличиваться.
При выборе одного уровня логирования сообщения уровня выше записываться не будут.
Уровень логирования | Входящие уровни |
---|---|
Трассировка | Авария, Ошибка, Предупреждение, Событие, Информация, Отладка, Трассировка |
Отладка | Авария, Ошибка, Предупреждение, Событие, Информация, Отладка |
Информация | Авария, Ошибка, Предупреждение, Событие, Информация |
Событие | Авария, Ошибка, Предупреждение, Событие |
Предупреждение | Авария, Ошибка, Предупреждение |
Ошибка | Авария, Ошибка |
Авария | Авария |
По умолчанию установлен уровень Информация. Этого уровня достаточно для простого пользования программой, так как уровни выше будут замедлять работу приложения.
Рассмотрим описание уровней логирования:
Уровень логирования | Выводимые команды |
---|---|
Авария | Выводит ошибки, приводящие к выходу сервера из строя |
Ошибка | Все ошибки попадают в лог, за исключением частых ошибок (например, ошибки преобразования типа в калькуляторе) |
Предупреждение | Предупреждения о проблемах в конфигурации (возникают при загрузке или копировании/вставке узлов), о несуществующих или лишних колонках при синхронизации колонок, об ошибках в калькуляторе. Ошибки, которые предоставляют информацию о возникновении непредвиденного события. |
Событие | Открытие пакета. Закрытие пакета. Сохранение пакета. Установка версии пакета. Конвертация пакета старой версии. |
Информация | Открытие (закрытие) сессий пользователя. Действия с сессиями и пакетами (закрытие пакетов и сессий) из менеджера сессий. Действия с сессиями и пакетами (закрытие пакетов и сессий) из менеджера сессий. Изменение пользователя (добавление, удаление, перемещение в группы) через администратора. Добавление (удаление) общих папок. Сообщения от менеджера памяти. Ошибки при обновлении колонок в визуализаторах "Таблица" и "Статистика". |
Отладка | Активация (деактивация) узлов. Ошибки преобразования типов для переменных типов в калькуляторе. |
Трассировка | Логируются все операции, например, подбор модели при обучении узла ARIMAX |
Уровень Трассировка чаще всего используется только во время отладки процесса, для обычного пользования достаточно уровня Информация.
Формат записи в лог
Каждая строка в файле журнала представляет собой сообщение в формате:
yyyy-mm-ddThh:mm:ss.mss level (process:thread>user:session:[requestID]) — message [paramJSON]
,
где
yyyy-mm-ddThh:mm:ss.mss
— дата и время с указанием миллисекунд (дата и время разделены литеройT
);level
— уровень логирования;process
— имя запущенного процесса;thread
— номер потока;user
— имя пользователя, запустившего процесс;session
— номер сессии;requestID
— идентификатор запроса (необязательный параметр; присутствует, если процесс запущен из внешнего сервиса);message
— текст сообщения;paramJSON
— параметры в формате JSON (необязательный параметр).
2021-06-10T14:09:39.980 info (Server.exe:4484>user:57:) - Инициализирована сессия для пользователя user{"SessionType": "Интерактивная сессия"}
2021-06-17T14:31:58.713 info (Server.exe:3364>service:93:ed331dffafc14923bb7aa43225fd01a5) - Закрыт пакет "/user/test-service.lgp"
2021-07-27T12:41:13.899 error (Server.exe:4244>user:23:) - Не удалось загрузить некоторые элементы конфигурации