Nginx not logging to socket

Danomi Czaski djczaski at gmail.com
Wed Jun 24 14:21:06 UTC 2015


On Wed, Jun 24, 2015 at 10:00 AM, Vladimir Homutov <vl at nginx.com> wrote:
> On Wed, Jun 24, 2015 at 08:31:31AM -0400, Danomi Czaski wrote:
>> On Wed, Jun 24, 2015 at 7:03 AM, Vladimir Homutov <vl at nginx.com> wrote:
>> > On Wed, Jun 24, 2015 at 06:12:49AM -0400, Danomi Czaski wrote:
>> >> Hello,
>> >>
>> >> On Sun, Jun 21, 2015 at 8:19 AM, Andrew Holway
>> >> <andrew.holway at otternetworks.de> wrote:
>> >> > Hallo!
>> >> >
>> >> > Using rsyslog I have set up a logging socket and confirmed that its working
>> >> > by piping in some stuff to "logger -u /dev/log"
>> >> > nginx/1.8.0 does not seem to be dumping in logs however. The nginx config is
>> >> > below..
>> >>
>> >> Any luck? I'm seeing the same problem on 1.7.12.
>> >>
>> >
>> > do you see some errors in the local error log? If nginx is unable to
>> > send data to socket for some reasons (check socket permissions, selinux
>> > and similar), you will see errors in the local log file.
>>
>> My config looks like:
>>
>>     error_log  syslog:server=unix:/dev/log;
>>
>> The only error I see is that nginx can't open /var/log/nginx/error.log.
>>
>>     $ nginx -t
>>     nginx: [alert] could not open error log file: open()
>> "/var/log/nginx/error.log" failed (2: Unknown error)
>>     nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
>>     nginx: configuration file /etc/nginx/nginx.conf test failed
>>
>> Of course /var/log/nginx isn't there because I'm trying to use syslog.
>> If I create /var/log/nginx, nginx starts and I'll see debugging logs
>> there but nothing related to syslog problems.
>>
>> The permissions on /dev/log look fine:
>>
>>     $ ls -l /dev/log
>>     srw-rw-rw-    1 root     root             0 Jun 24 12:41 /dev/log=
>>
>
> did you try increasing log level?  If there are no errors, nginx will
> not write anything to log in your case.
>
> you can add one more error_log directive and point it to some local
> file with write permissions to check there for possible errors.

Okay, I see messages going to syslog, I had to increase the log level
as you said. Thanks.

It seems like there _must_ be a file logger or nginx won't start. If I
don't want any log file it looks like I have to do something like:

    error_log  /dev/null emerg;
    error_log  syslog:server=unix:/dev/log debug;



More information about the nginx mailing list