]>
jfr.im git - munin-plugins.git/blob - php_fpm
8 php_fpm
- Plugin to show PHP
-FPM status
13 #%# capabilities=autoconf
17 .
"${MUNIN_LIBDIR:-/usr/share/munin}/plugins/plugin.sh"
19 URL
="${URL:-http://localhost/fpm?json}"
20 CURL_OPTS
="${CURL_OPTS:---location} --silent"
22 if [ "$1" = "autoconf" ]; then
23 if ! command -v curl
>/dev
/null
2>&1; then
27 if ! command -v jq
>/dev
/null
2>&1; then
31 if ! curl
--fail $CURL_OPTS $URL >/dev
/null
2>&1; then
32 echo "no (curl $CURL_OPTS $URL failed)"
39 if [ "$1" = "config" ]; then
41 echo 'multigraph php_fpm_workers'
42 echo 'graph_title PHP-FPM workers'
43 echo 'graph_args --base 1000 -l 0 '
45 echo 'graph_vlabel # workers'
46 echo 'graph_category php'
47 echo 'total.label Total workers'
48 echo 'total.draw AREA'
49 echo 'total.colour ffd660'
50 echo 'idle.label Idle workers'
51 echo 'active.label Active workers'
52 echo 'max.label Max reached'
53 echo 'max.info Max reached since start'
54 echo 'max.colour 000000'
56 echo 'multigraph php_fpm_connections'
57 echo 'graph_title PHP-FPM Connections'
58 echo 'graph_args --base 1000 -l 0'
60 echo 'graph_vlabel Connections/second'
61 echo 'graph_category php'
62 echo 'rate.label Connection rate'
63 echo 'rate.type DERIVE'
65 echo 'multigraph php_fpm_slow'
66 echo 'graph_title PHP-FPM Slow requests'
67 echo 'graph_args --base 1000 -l 0'
69 echo 'graph_vlabel # since start'
70 echo 'graph_category php'
71 echo 'requests.label Slow requests'
73 echo 'multigraph php_fpm_queue'
74 echo 'graph_title PHP-FPM Listen queue'
75 echo 'graph_args --base 1000 -l 0'
77 echo 'graph_vlabel Queue size'
78 echo 'graph_category php'
79 echo 'current.label Current'
80 echo 'max.label Highest'
81 echo 'len.label Capacity'
83 echo 'len.colour ffd660'
88 jsonblob
="$(curl $CURL_OPTS $URL)"
89 if ! echo "$jsonblob" | jq
-e >/dev
/null
; then
90 echo 'multigraph php_fpm_workers'
96 echo 'multigraph php_fpm_connections'
99 echo 'multigraph php_fpm_slow'
100 echo 'requests.value U'
102 echo 'multigraph php_fpm_queue'
103 echo 'current.value U'
110 echo 'multigraph php_fpm_workers'
111 echo "idle.value $(echo "$jsonblob" | jq '."idle processes"')"
112 echo "active.value $(echo "$jsonblob" | jq '."active processes"')"
113 echo "total.value $(echo "$jsonblob" | jq '."total processes"')"
114 echo "max.value $(echo "$jsonblob" | jq '."max active processes"')"
116 echo 'multigraph php_fpm_connections'
117 echo "rate.value $(echo "$jsonblob" | jq '."accepted conn"')"
119 echo 'multigraph php_fpm_slow'
120 echo "requests.value $(echo "$jsonblob" | jq '."slow requests"')"
122 echo 'multigraph php_fpm_queue'
123 echo "current.value $(echo "$jsonblob" | jq '."listen queue"')"
124 echo "max.value $(echo "$jsonblob" | jq '."max listen queue"')"
125 echo "len.value $(echo "$jsonblob" | jq '."listen queue len"')"