Назад | Перейти на главную страницу

Запись nginx в системный журнал на CentOS 7

Свежая установка CentOS 7 и nginx 1.6.3. За официальная документация Я установил директиву access_log для пересылки через syslog на удаленный сервер в /etc/nginx/nginx.conf:

#access_log /var/log/nginx/access.log   main;
access_log syslog:server=[10.1.2.3],facility=local7,tag=nginx,severity=info;

Когда я перезапускаю (или запускаю) nginx с этим изменением, я получаю следующую ошибку:

[root@localhost ~]# systemctl restart nginx
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.

[root@localhost ~]# systemctl status nginx.service
(...)
nginx: [emerg] open() "/usr/share/nginx/syslog:server=[10.1.2.3],facility=local7,tag=nginx,severity=info" failed (13: Permission denied)
(...)

Это похоже на то, что служба не знает, как правильно анализировать свой собственный файл конфигурации, как будто IP-адрес и параметры являются частью файла, из которого он пытается читать. У кого-нибудь это работает, я упускаю что-то очевидное?

У вас старый nginx.

Logging to syslog is available since version 1.7.1. As part of our commercial subscription logging to syslog is available since version 1.5.3.

из документации: http://nginx.org/en/docs/syslog.html