Настройка уровня и типа логирования#
Уровень и тип логирования профиля указывается разделе system\optional конфигурационного файла профиля параметрами log_level и log_type. Например:
version: 2.0.3
profile: erib_mapi
system:
optional:
log_level: error
log_type: file
Доступны следующие уровни логирования:
debug - информации для отладки;
info - подробная информация о процессе обработки запроса/ответа;
notice - уведомление о событиях;
warn - предупреждение;
error - ошибка при обработке запроса/ответа, не приводящая к неработоспособности;
crit - критические ошибки, не приводящие к неработоспособности;
emerg-alert - аварийный сбой, уведомление о неработоспособности;
off - отключение логирования.
Вы можете отправлять сообщения в удаленный приемник сообщений syslog, задав параметры подключения к удаленному сервер log_host и log_port.
Следует учесть, что при выборе уровня debug, логи профиля становятся значительно информативнее, но максимальный эффект достигается при использовании дебажных пакетов SOWA.
Для это необходимо произвести инсталляцию СПО SOWA c флагом -g:
./install.sh -g
Для того, чтобы убедиться в том, что в системе установлен дебажный пакет, рекомендуется проанализировать вывод команды "sudo yum list installed sowa-nginx-debug*":
sowa-nginx-debug.x86_64 2.1-84904.el7 @/sowa-nginx-debug-2.1-84904.el7.x86_64
Далее необходимо запустить профиль с флагом "–debug":
sowa-config --run <имя профиля> --debug
Более подробно процесс установки описан в статье "Установка SOWA в режиме отладки" в Руководстве по установке.
Существует следующие типы логирования профиля: file, syslog и kafka. По умолчанию используется file.
При использовании типа kafka события профиля отправляются в kafka. Существует возможность комбинировать источники для отправки логов, например, файл+kafka, kafka+файл+syslog и т.д. в зависимости от потребностей клиента.
При использовании типа syslog cобытия профиля уходят в syslog через сокет unix:/dev/log. Имеется возможность указать хост и порт посредством параметров log_host и log_port.
В случае syslog журналирования события перенаправляются в файл /sowalogs/sowa-nginx.log посредством правила в rsyslog.conf:
if ($programname startswith "sowa_nginx") then {
action(type="omfile" file="/sowalogs/sowa-nginx.log" flushOnTXEnd="on")
stop
}