Re: unit и его лог

Anton Kiryushkin swood на fotofor.biz
Вс Июл 14 21:09:01 UTC 2019


Валентин, спасибо, за ваш совет, пересобрал Unit и получил довольно
загадочную картину. К примеру.
Вот сообщение в логе Unit:
2019/07/15 00:02:48.152 [warn] 20971#20971 [unit] #174772: application
returned 500 response

Окей, идем в лог ошибок php и ищем, что ж было:
[15-Jul-2019 00:02:48 Europe/Moscow] Failed to connect [111]: Connection
refused

Внимание вопрос. Как тут узнать причину?

ср, 3 июл. 2019 г. в 18:47, Валентин Бартенев <vbart at nginx.com>:

> On Wednesday 03 July 2019 12:47:01 Anton Kiryushkin wrote:
> > Спасибо за ваш ответ.
> >
> > Ответ от php-fpm я мог найти в error-log nginx-a. Ну я не скажу, какую
> > именно. Еще раз, проблема заключается в том, что в логе в access.log
> nginx
> > есть 500-й код ответа. Но причину этого 500-го кода нельзя найти в логе
> > ошибок php (а там прописана опция error_log), и логе unit и в логе nginx,
> > потому что там в принципе не должно быть этих ошибок. В случае с fpm в
> логе
> > ошибок nginx гарантированно причину можно было найти. Приложение не
> > возвращает просто так 500-ю ошибку.
> >
> > Поэтому и возник вопрос, как же можно заставить unit писать лог любых
> своих
> > ошибок в какой-то файл. Ну или куда вообще можно было бы копать, так как
> > возможные вещи, которые есть возможность предпринять в php, на мой
> взгляд,
> > предприняты.
> [..]
>
> В error-log nginx писалось то, что приходило от php-fpm через stderr-канал,
> а тот в свою очередь посылал туда то, что php писал в stderr.
>
> В случае Unit-а весь stderr из php направляется в unit.log и собственно там
> и должен быть.
>
> Могу предложить попробовать собрать php модуль с патчем ниже.  В этом
> случае
> всякий раз, когда php-интерпретатор возвращает ответ с 500-ым кодом, в
> unit.log
> будет об этом запись.
>
> 2019/07/03 20:45:02.899 [warn] 14919#14919 [unit] #7: application returned
> 500 response
>
> Это, как минимум, позволит исключить ситуацию, что 500-ую генерирует сам
> Unit
> и не сообщает об этом по какой-то причине.
>
> --
> Валентин Бартенев
>
>
> diff -r 2b068c8361f9 src/nxt_php_sapi.c
> --- a/src/nxt_php_sapi.c        Tue Jul 02 16:44:08 2019 +0300
> +++ b/src/nxt_php_sapi.c        Wed Jul 03 20:32:38 2019 +0300
> @@ -774,6 +774,10 @@ nxt_php_send_headers(sapi_headers_struct
>          status = 200;
>      }
>
> +    if (status == 500) {
> +        nxt_unit_req_warn(req, "application returned 500 response");
> +    }
> +
>      rc = nxt_unit_response_init(req, status, fields_count, resp_size);
>      if (nxt_slow_path(rc != NXT_UNIT_OK)) {
>          return SAPI_HEADER_SEND_FAILED;
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



-- 
Best regards,
Anton Kiryushkin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20190714/2a0c6ced/attachment.html>


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