9

I am unsure is that is a Nginx or PHP-FPM setting, but long log lines are getting truncated. Is there a setting to increase the max log line length?

5

The limit of 1024 characters is hard-coded in php-fpm not nginx.

If you want to go over 2048 characters you need to re-compiled both nginx and php-fpm, else only php-fpm.

There is a full solution with patches here for 8192 characters: https://forums.freebsd.org/threads/56543/

|improve this answer|||||
4

You need to recompile Nginx if you want log lines longer than 2048 bytes. From http://wiki.nginx.org/HttpLuaModule:

There is a hard-coded length limitation on the error messages in the Nginx core. It is 2048 bytes at most, including the trailing newlines and the leading timestamps. You can manually modify this limit by modifying the NGX_MAX_ERROR_STR macro definition in the src/core/ngx_log.h file in the Nginx source tree. If the message size exceeds this limit, the Nginx core will truncate the message text automatically.

|improve this answer|||||
  • Recompiled with increased NGX_MAX_ERROR_STR. Did not help, same as before. – Benjamin Peter May 31 '16 at 13:01
3

I believe you need to have a look at

log_errors_max_len

From here

|improve this answer|||||
  • 1
    This is correct answer. Increase log_errors_max_len in php.ini, solve this problem. – James M May 17 '18 at 12:20
2

I recommend using php 7.3

From https://www.php.net/ChangeLog-7.php :

Fixed bug #69031 (Long messages into stdout/stderr are truncated incorrectly) - added new log related FPM configuration options: log_limit, log_buffering and decorate_workers_output.

|improve this answer|||||
0

Open /etc/php-fpm.conf and update the value of log_limit = 4096 or higher if you like, then systemctl restart php-fpm.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.