Edit report at https://bugs.php.net/bug.php?id=80428&edit=1
ID: 80428
Comment by: erik dot mueller at power dot cloud
Reported by: heavy-traffic-website at yopmail dot com
Summary: PHP-FPM : Is there an option to suppress /ping from
logs
Status: Open
Type: Feature/Change Request
Package: *Configuration Issues
Operating System: Debian 11
PHP Version: 8.0.0
Block user comment: N
Private report: N
New Comment:
For me and I think for everyone else who is working with PHP in a container environment like Docker
this change is very important. In my specific use case I have a healthcheck set up for checking the
availability of the php-fpm endpoint in a php-fpm + nginx image. So my healthcheck looks like
#!/bin/sh
export SCRIPT_NAME=/ping
export SCRIPT_FILENAME=/ping
export REQUEST_METHOD=GET
if ! cgi-fcgi -bind -connect localhost:9000; then
exit 1
fi
This script gets executed every 10 seconds and so my container logs get filled up with messages like
127.0.0.1 - 03/Feb/2021:10:12:01 +0000 "GET /ping" 200
I wouldn't bother about it if I would not rely on the container logs inside my infrastructure
logging system. My logs and their size get bigger and bigger just because of a log that is actually
not relevant for me because Docker would take action if the healthcheck is failing. So having a
option to disable logging requests to the ping endpoint would be a big step ins saving space and
effort getting rid of these entries inside the logs. And I think this option would also come in
handy for many other people like DevOps (like me) and SysAdmins.
Previous Comments:
------------------------------------------------------------------------
[2020-11-28 11:50:22] heavy-traffic-website at yopmail dot com
The following patch has been added/updated:
Patch Name: php-fpm-ping_dontlog
Revision: 1606564222
URL: https://bugs.php.net/patch-display.php?bug=80428&patch=php-fpm-ping_dontlog&revision=1606564222
------------------------------------------------------------------------
[2020-11-27 12:38:35] heavy-traffic-website at yopmail dot com
Pretexting is normal to generate don't wanted logs because of, shell parsing exists ?
I prefer to not have /ping logs as FPM can eliminate this entries ; it will save the resouces. And
some economies from here and from there, terminates by a lot of resources, so a lot of economies.
Think big, how many logs represents unwanted logs on thousands servers ? Your argument "not
seen why" does it match with needs ? Let me bring few elements of response.
Apache permit full conditionnal logs :
- https://httpd.apache.org/docs/trunk/en/logs.html#conditional
Haproxy permit some conditionnal logs :
HAproxt - Options dontlog-normal / dontlognull :
- https://cbonte.github.io/haproxy-dconv/2.4/configuration.html#4.2-option%20dontlog-normal
- https://cbonte.github.io/haproxy-dconv/2.4/configuration.html#4.2-option%20dontlognull
Haproxy - Disabling logging of successful connections :
- https://cbonte.github.io/haproxy-dconv/2.4/configuration.html#chapter-8.3.3
------------------------------------------------------------------------
[2020-11-27 11:36:36] nikic@php.net
Really not seeing the need for this, a grep -v "GET /ping" does the same in a
more generic way.
------------------------------------------------------------------------
[2020-11-27 11:16:24] heavy-traffic-website at yopmail dot com
for one week logs, on each PHP-FPM server, i have 278.519 useless lines:
$> grep "/ping" /var/log/php8/mypool/access.log{,.1} | wc -l
278519
Moreover I have almost 2% of logs with %C%% (user + system CPU, not tested separately) that display
absurdity:
$> grep "0.00%$" /var/log/php8/mypool/access.log{,.1} | wc -l
277059
$> grep -v "0.00%$" /var/log/php8/mypool/access.log{,.1} | wc -l
3974
$> grep -v "0.00%$" /var/log/php8/mypool/access.log{,.1} | grep "/ping" |
head
- - 19/Nov/2020:22:57:09 +0100 "GET /ping" 200 - 0.161 2048 6211.18%
- - 19/Nov/2020:22:57:44 +0100 "GET /ping" 200 - 0.170 2048 5882.35%
- - 19/Nov/2020:23:04:09 +0100 "GET /ping" 200 - 0.171 2048 5847.95%
- - 19/Nov/2020:23:06:03 +0100 "GET /ping" 200 - 0.101 2048 9900.99%
- - 19/Nov/2020:23:12:00 +0100 "GET /ping" 200 - 0.137 2048 7299.27%
- - 19/Nov/2020:23:17:27 +0100 "GET /ping" 200 - 0.130 2048 7692.31%
- - 19/Nov/2020:23:18:13 +0100 "GET /ping" 200 - 0.139 2048 7194.24%
- - 19/Nov/2020:23:19:47 +0100 "GET /ping" 200 - 0.138 2048 7246.38%
- - 19/Nov/2020:23:23:10 +0100 "GET /ping" 200 - 0.157 2048 6369.43%
- - 19/Nov/2020:23:28:55 +0100 "GET /ping" 200 - 0.215 2048 4651.16%
------------------------------------------------------------------------
[2020-11-27 02:04:47] heavy-traffic-website at yopmail dot com
Type #bug changed to #feature
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=80428
--
Edit this bug report at https://bugs.php.net/bug.php?id=80428&edit=1