Системный журнал#
Доступ к системному журналу#
Логирование работы GraDeLy осуществляется компонентом Журналирование (LOGA) продукта Platform V Monitor (OPM) (далее по тексту – Журналирование). Модули GraDeLy записывают действия в стандартный системный файл sysout с использованием стандартных Java-методов журналирования. Для записи используется библиотека log4j.
Для подключения Журналирования добавьте maven зависимость в pom.xml, который находится внутри сервисной части приложения:
<dependency>
<groupId>sbp.logger</groupId>
<artifactId>logger-api</artifactId>
</dependency>
Основные события#
Основные типы (уровни) событий системного журнала:
Error — ошибки, возникающие в процессе работы сервиса. По умолчанию выводятся в Журналирование;
Warn — предупреждения, возникающие в процессе работы сервиса. По умолчанию выводятся в Журналирование;
Info — информационные сообщения, возникающие в процессе работы сервиса. По умолчанию выводятся в Журналирование;
Debug — отладочные сообщения (детали взаимодействия с внешними системами), возникающие в процессе работы сервиса. Не выводятся по умолчанию в Журналирование;
Trace — трассировочные сообщения (ход выполнения сложных участков сервиса — информация для анализа ошибок), возникающие в процессе работы сервиса. Не выводятся по умолчанию в Журналирование.
Для уменьшения нагрузки на инфраструктуру уровень Trace включать не рекомендуется.
Настройка системного журнала#
Конфигурация уровня событий системного журнала позволяет для каждого класса гибко настраивать уровень ошибок и предупреждений.
Журналы можно направлять:
в Журналирование;
на серверы в консольные журналы.
Типовые рекомендуемые параметры логирования#
Лог-файлы приложения, отправляемые в Журналирование, зависят от текущей конфигурации.
Для корректной работы Журналирования необходимо настроить параметры при помощи log4j по таблице ниже.
Категория |
Уровень |
Описание |
|---|---|---|
|
WARN |
Логирование GDL |
|
ERROR |
Отключение спама Kafka |
Расширенные параметры логирования#
Для уменьшения нагрузки на инфраструктуру уровень Debug включать не рекомендуется.
Задаются при необходимости.
Категория |
Уровень |
Описание |
|---|---|---|
|
DEBUG |
Логирование работы воркера |
Отладочное логирование#
Применяется при необходимости локализации проблемы. Включение отладочной категории приводит к большому количеству логов — поэтому нужно выполнять осознанно и отключать после локализации проблемы.
Категория |
Уровень |
Описание |
|---|---|---|
|
DEBUG |
Расширенное логирование GraDeLy. Включается на стороне GraDeLy |
|
DEBUG |
Расширенное логирование Kafka. Включается на стороне GraDeLy |
Примеры событий Error системного журнала:
203 - GRAPH_ERROR, «Репликация не может быть запущена, так как есть запущенные компоненты»;
204 - GRAPH_NAME_ERROR, «Граф с таким именем уже существует»;
501 - CONFIG_ERROR, «Ошибка внутри конфиг сервиса»;
302 - CONNECTION_ERROR_OPTIONS, «Ошибка парсинга options»;
414 - WORKER_ERROR_STATUS, «Ошибка при получении статуса»;
800 - EMPTY_LINKS, «Пустой список графа репликации»;
801 - LINK_EXIST, «Уже существует такое ребро графа».
Примеры логирования:
ERROR:
ERROR r.g.s.AccessAuthenticationProvider - Unable to authorize request for /me from xx.xxx.xx.xx access_system.client.API.exceptions.TicketExpiredException: UnauthorizedWARN:
WARN r.s.u.p.s.v.a.s.r.ResponseExceptionHandler - Bad response: 401 UNAUTHORIZEDDEBUG:
DEBUG 62360 —- [pool-1-thread-1] ru.gradely.business.KafkaIntegration : TxId 405168112, origin 1INFO:
INFO 62360 —- [pool-1-thread-1] r.g.business.ReplicationStreamComponent : Vector is empty {"xid":38543,"origin":0,"change":[]}