-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(php_fpm): track maximum active processes #16193
feat(php_fpm): track maximum active processes #16193
Conversation
The PHP-FPM status page also provides the "max active processes" statistic, which translates to the maximum number of processes that can be executed at once. In the PHP-FPM configuration, this is controlled by the pm.max_children key. This is particularly useful in understanding saturation within the PHP-FPM container, in a manner that allows horizontal scaling in a more intelligent way than the built-in CPU and memory metrics in Kubernetes. This pairs well with the Datadog External Metrics functionality as well
f1f538a
to
1fd72da
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey 👋
Looks good to me! Would you mind adding a new line to the metadata.csv? Once done, it should be ready to merge.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm gonna merge this one and update the file, no worries 🙂
Thanks again for your contribution!
Thank you @FlorentClarret 🙏 |
What does this PR do?
The PHP-FPM status page also provides the "max active processes" statistic, which translates to the maximum number of processes that can be executed at once. This is particularly useful in understanding saturation within the PHP-FPM container, in a manner that allows horizontal scaling in a more intelligent way than the built-in CPU and memory metrics in Kubernetes. This pairs well with the Datadog External Metrics functionality as well
Motivation
We turned on the External Metrics functionality with Datadog. I wanted to implement saturation-based scaling signals that the Datadog Agent provides through the various
php_fpm.*
metrics, but unfortunately there isn't a metric yet for detecting the maximum number of workers yet. So, here it is!Additional Notes
I've been going off of the status pages for our internal PHP-FPM pods, an example of the
/status
output:I went with
php_fpm.processes.max
but we could change this tophp_fpm.processes.max_active
to tie it closer to the actual name.Lastly, a support ticket was opened for this feature request
Review checklist (to be filled by reviewers)
qa/skip-qa
label if the PR doesn't need to be tested during QA.