What does this error log mean?

Maxim Dounin mdounin at mdounin.ru
Mon Jan 21 16:21:56 MSK 2008


Hello!

On Mon, Jan 21, 2008 at 08:23:37PM +0800, Joe wrote:

> Maxim Dounin wrote:
>> Hello!
>>
>> On Sun, Jan 20, 2008 at 09:03:27PM +0800, Joe wrote:
>>
>>> Hi all
>>> I installed Nginx 0.5.34 on FreeBSD 6.2 (AMD) as a load balance, and I 
>>> defined the error log like:
>>>
>>> error_log  /home/nginx/logs/crit_error.log  crit;
>>>
>>> Today, I find the following error info from this error log file:
>>>
>>> 2008/01/20 20:46:46 [error] 2233#0: accept() failed (53: Software caused 
>>> connection abort) while accepting new connection on 0.0.0.0:80
>>> 2008/01/20 20:47:39 [error] 2233#0: accept() failed (53: Software caused 
>>> connection abort) while accepting new connection on 0.0.0.0:80
>>> 2008/01/20 20:53:15 [error] 2219#0: accept() failed (53: Software caused 
>>> connection abort) while accepting new connection on 0.0.0.0:80
>>> 2008/01/20 20:54:33 [error] 2219#0: accept() failed (53: Software caused 
>>> connection abort) while accepting new connection on 0.0.0.0:80
>>> 2008/01/20 20:54:56 [error] 2219#0: accept() failed (53: Software caused 
>>> connection abort) while accepting new connection on 0.0.0.0:80
>>> 2008/01/20 20:55:35 [error] 2219#0: accept() failed (53: Software caused 
>>> connection abort) while accepting new connection on 0.0.0.0:80
>>> 2008/01/20 20:56:11 [error] 2215#0: accept() failed (53: Software caused 
>>> connection abort) while accepting new connection on 0.0.0.0:80
>>>
>>> The number 2233,2219 should be the PIDs, what does the number 53 mean 
>>> here? and what's the root cause which will trigger this kind of error?
>>
>> http://www.sysoev.ru/nginx/docs/faq.html (in russian)
>>
>> This is non-critical error caused by client closed connection befor nginx 
>> accept()'ed it. Number 53 here is error number, see errno(2) manpage for 
>> details.
>>
>> Maxim Dounin
>>
>>
>
> Hi Dounin
> Thanks for your answer.
>
> Today, I find the following kind of error:
> 2008/01/21 12:59:45 [alert] 13288#0: *27192854 socket() failed (55: No 
> buffer space available) while connecting to upstream, client: ......
> 2008/01/21 12:59:45 [alert] 13288#0: *27192754 socket() failed (55: No 
> buffer space available) while connecting to upstream, client: ......
> 2008/01/21 12:59:45 [alert] 13288#0: *27193191 socket() failed (55: No 
> buffer space available) while connecting to upstream, client: ......
>
> Do you know what's the number 27192854, 27192754, 27193191 mean? also what 

This is internal connection numbers. They are usefull only when 
you are debugging nginx and want to find log lines related to 
specific connection.

> does 'No buffer space available' mean? does it mean my server has no enough 
> memory or any others?

[quote from intro(2)]
      55 ENOBUFS No buffer space available.  An operation on a socket or pipe
              was not performed because the system lacked sufficient buffer
              space or because a queue was full.
[end quote]

Server has no buffer space. Check 'netstat -m' output. You 
probably have to adjust number of mbufs allocated, see tuning(7).

> BTW, where can I get the detailed error info description document? I 
> searched the Nginx official Wiki page, but I still cannot find it.

Basically, you should use your OS documentation to find out what's 
happening. Under FreeBSD - consult errno(2) manual page where all 
system error codes described.

There is no such a thing as 'detaild error description' for nginx, and 
if you want to know exactly what does <message> mean you have to 
look into source code. In most cases it's not needed though - errors 
are self-explanatory and mostly refer to system errors nginx 
have nothing to do with (and so - see above).

Maxim Dounin





More information about the nginx mailing list