Welcome! Log In Create A New Profile

Advanced

ошибка "upstream prematurely closed connection" - обсудим ?

Илья Шипицин
October 13, 2019 05:20AM
привет,

предыстория. видим ошибку в логах. вспоминаем концепцию, что с уровнем
error логируются ошибки на стороне сервера. считаем, что ошибка
действительно была. идем к клиенту - у клиента статус 200, ему хорошо, все,
что он хотел считать, он вычитал. повторяем несколько раз, в большинстве
случаев ситуация повторяется, в логах ошибка, у клиента все хорошо.

ок. идем смотреть исходники

вывод сообщения об ошибке встречается три раза

./nginx-1.17.4/src/http/ngx_http_upstream.c:
"upstream prematurely closed connection");
./nginx-1.17.4/src/http/ngx_http_upstream.c:
"upstream prematurely closed connection");
./nginx-1.17.4/src/http/ngx_http_upstream.c:
"upstream prematurely closed connection");

в двух случаях запрос завершается статусом 502

ngx_http_upstream_finalize_request(r, u, NGX_HTTP_BAD_GATEWAY);


в одном месте - не завершается:
http://hg.nginx.org/nginx/file/tip/src/http/ngx_http_upstream.c#l2369

собственно, recv в некоторых случаях может выдавать 0 и это не всегда
ошибка (у нас CentOS 7, возможно, там какая-то своя магия еще, с
какими-нибудь сетевыми штуками бекпортированными в ядро 3.10)

man recv
...
"The value 0 may also be returned if the requested number of bytes to
receive from a stream socket was 0."

собственно, в этом месте меняем текст. и, чудо, после этого залогированные
"upstream prematurely closed connection" идеально кореллируют с реальными
обрывами.

вопрос - в этом месте действительно стоит логировать ошибку с таким текстом
? может поменять уровень на info (или debug), а текст сделать что-то типа
"zero bytes read from recv" ?

Илья Шипицин
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

ошибка "upstream prematurely closed connection" - обсудим ?

Илья Шипицин October 13, 2019 05:20AM

Re: ошибка "upstream prematurely closed connection" - обсудим ?

Evgeniy Berdnikov October 13, 2019 11:12AM

Re: ошибка "upstream prematurely closed connection" - обсудим ?

Илья Шипицин October 13, 2019 11:46AM

Re: ошибка "upstream prematurely closed connection" - обсудим ?

Илья Шипицин October 14, 2019 03:02AM

Re: ошибка "upstream prematurely closed connection" - обсудим ?

Evgeniy Berdnikov October 14, 2019 03:34AM

Re: ошибка "upstream prematurely closed connection" - обсудим ?

Илья Шипицин October 14, 2019 03:50AM

Re: ошибка "upstream prematurely closed connection" - обсудим ?

Maxim Dounin October 14, 2019 09:10AM

Re: ошибка "upstream prematurely closed connection" - обсудим ?

Илья Шипицин October 15, 2019 03:26AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 234
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready