Лог-журналы
Обзор
Любой бизнес-процесс, обслуживаемый системой в целом, обслуживается как минимум одной логической ролью, а как правило несколькими из них.
В ходе работы роли заносят информацию в лог-журналы: /var/log/era/<NODE>/<CATEGORY>/<FILE>.log
, где
-
NODE
– папка с именем ноды. -
CATEGORY
– папка с именем категории лог-журналов. -
FILE
– конкретный файл порции лог-журнала определенного типа, привязанный ко времени и ограниченный по размеру.
Дополнительно продуктовые микросервисы заносят информацию в лог-журналы: /var/log/era/<MSVC_NODE>/domains/<MICROSERVICE_NAME>/<FILE>.log
, где дополнительно
-
MSVC_NODE
– папка с именем ноды msvc. -
MICROSERVICE_NAME
– папка с именем продуктового микросервиса.
Лог-журналы пишутся локально на сервере в рабочем каталоге ноды, где исполняется экземпляр роли.
Файлы лог-журналов разделяются по категориям, таким образом в папке лог-журналов ноды располагаются папки категорий, внутри которых лежат файлы.
Каждый файл представляет собой определенный тип логирования – отражается в префиксе его имени, например trn_2019-10-07.0002.log
.
Файлы лог-журналов одного типа делятся по 10 МБ и нумеруются постфиксом.
Файлы лог-журналов автоматически удаляются по истечении 2 суток с момента закрытия. При накоплении в каталоге лог-журналов ноды суммарного объема более 1 ГБ, наиболее старые файлы автоматически удаляются. Пустые каталоги категорий также автоматически удаляются.
При смене даты в локальном часовом поясе сервера текущие файлы автоматически закрываются, и логирование продолжается в файлах, содержащих в имени новую дату.
При закрытии очередного файла он автоматически отправляется в хранилище лог-журналов (роль logstore) текущего сайта. При отсутствии доступа к нему попытки отправить файл будут периодически производиться, пока файл не будет удален.
Логирование приостанавливается, если на диске с рабочим каталогом ноды остается менее 3 ГБ свободного места. Логирование возобновляется после появления свободного места. Операция проверки протекает с периодичностью в 1 минуту.
Работа с лог-журналами сама по себе отражается в лог-журналах категории log
.
В каждом лог-журнале фиксируется время и идентификатор процесса, размещающего сообщение. При перезапуске ноды файл последнего лог-журнала будет переоткрыт для записи, и в него будет размещена стартовая совокупность набор данных.
================================================================================ ======== Log started at 2024-09-05 11:33:02.487 ================================ ======== Cookie='ELIVFDFOXKYQSMLOZZEN' ================================================================================ 11:33:02.487 <0.26543.6> message 1 11:33:02.530 <0.26543.6> message 2 ...
Настройка логирования
По способу настройки вывода в лог-журналы информация делится на:
-
Постоянную – размещается в лог журналах без возможности выключения.
-
Отладочную – в продакшене выключена.
-
В мастер домене в приложении "Настройки" в разделе "Система. Ноды" каждой ноде можно установить уровень логирования. По умолчанию 'INFO'. Уровень сбрасывается автоматически при перезапуске.
-
В целях отладки может быть включена разработчиками и предоставлена в виде архива с патчем.
-
-
Настраиваемую
Слои логирования
По способу привязки к процессам и сущностям в лог-журналах информация делится на:
-
инфраструктурную;
-
процессную;
-
внутри-доменную
-
общую;
-
по процессам связанным с сущностями;
-
микросервисы продуктового слоя.
-
Следует отметить, что
-
ряд сообщений по доменам относится к инфраструктурному слою. Например, процесс синхронизации данных домена между сайтами.
-
ряд процессов несмотря на свою связь с доменами, относится к процессному слою. Например, обработка звонка и логирование SIP-трафика.
Содержание категорий
Категория | Типы и описания |
---|---|
|
Лог-журналы приложения
|
|
Лог-журналы роли
|
|
Лог-журналы сервиса загрузки ноды
|
|
|
|
Каталог у ролей, логирующих независимые внутридоменные процессы. Содержит подкаталоги по доменам, в которых были сообщения, сохраненные в лог журналы. Для роли |
|
Лог-журналы ролей
|
|
|
|
Лог-журналы сервиса обработчика сообщений от виртуальной машины erlang: ошибки, предупреждения, информационные сообщения. |
|
Лог-журналы роли
|
|
|
|
Лог-журналы сервиса логирования.
|
|
Лог-журналы роли
|
|
Лог-журналы роли
|
|
Лог-журналы роли
|
|
|
|
Лог-журналы роли
|
|
Лог-журналы роли
|
|
Лог-журналы роли
|
|
Лог-журналы роли
|
|
|
|
|
|
Лог-журналы приложения обработки сценариев
|
|
|
|
Лог-журналы ролей обработчиков SIP-протокола.
|
|
Лог-журналы роли
|
|
|
|
|
|
Лог-журналы роли
|
|
Лог-журналы внутреннего сервиса трассировки процессов.
|
|
|
|
Лог-журналы роли
|
|
Лог-журналы роли
|
|
|
|
Лог-журналы роли
|
В рабочем каталоге каждой ноды можно найти некоторую совокупность приведенных выше типов логов в зависимости от того, какие роли в ней действут и в каких процессах участвуют.
Особые категории
Существует несколько лог-журналов, не попадающих под описанную структуру хранения и фиксации событий.
Файл | Описание |
---|---|
|
Фиксирует консольный вывод рабочих нод виртуальной машины. Размещается непосредственно в рабочем каталоге ноды.
|
|
Отладочный дамп виртуальной машины. Его наличие указывает на то, что в предыдущий период нода обрушалась. Создается при падении процесса ноды. Размещается непосредственно в рабочем каталоге ноды. |
|
Регистрирует ошибки возникшие в ноде.
Создается только нодами, исполняющими приложение Размещается в корне каталога логирования.
|
|
Регистрирует падения внутренних виртуальных процессов внутри ноды.
Создается только нодами, исполняющими приложение Размещается в корне каталога логирования.
|
|
Регистрирует некоторые ключевые внутренние точки в базовых процессах.
Создается только нодами, исполняющими приложение Размещается в корне каталога логирования.
|