Re: проблема с severity при направлении error_log в syslog

Vladimir Homutov vl на nginx.com
Вт Сен 22 14:56:19 UTC 2015


On Mon, Sep 21, 2015 at 11:09:51AM +0300, Иван Мишин wrote:
> Добрый день!
>
> Не могу до конца понять как работает перенаправление в syslog error log.
> С access_log все понятно
> access_log syslog:server=127.0.0.1:514,facility=local4,severity=info main
> задаем адрес сервера, порт, фасилити и северити и формат лога(который
> описан отдельно), получается что у меня все access сообщениям
> прикручивается селектор local4.info по которому я потом веду обработку в
> сислоге.
> в сислог конфиге пишу:
> $template nginx_test_access,"/a/b/c/nginx_test_error.log"
> $template ClearMessageFormat,"%fromhost-ip% | %msg:2:$%\n"
> if $syslogfacility-text == 'local4' and $syslogpriority-text == 'info' then
> -?nginx_test_access;ClearMessageFormat
>
> Соответственно access логи у меня четко складываются в
>  /a/b/c/nginx_test_access.log
>
> в случае же с error_log хотел назначить логу селектор local4.warn, то есть
> чтобы все логи error_log имели селектор local4.warn (по аналогию с access
> логами)
> пишу в конфиге nginx:
> error_log syslog:server=127.0.0.1:514,facility=local4,severity=warn notice
>
> а в конфиге syslog:
> $template nginx_test_error,"/a/b/c/nginx_test_error.log"
> $template ClearMessageFormat,"%fromhost-ip% | %msg:2:$%\n"
> if $syslogfacility-text == 'local4' and $syslogpriority-text == 'info' then
> -?nginx_test_error;ClearMessageFormat
>
> но логи в шаблон не попадают, потому что я так понял в итоге логи имеют
> фасилити local4 а северити в зависимости от типа сообщения или notice или
> errror или emerg и т.д.
> Таким образом error логи  забивают целиком диапазон local4.
> Можно ли как-то заставить работать error лог по аналогии с accesss логом?
> И почему в документации не сказано о том что указывать параметр severity
> для директивы error_log фактически бессмысленно?

спасибо за репорт, документацию поправили.



Подробная информация о списке рассылки nginx-ru