]>
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'
66 echo 'multigraph php_fpm_slow'
67 echo 'graph_title PHP-FPM Slow requests'
68 echo 'graph_args --base 1000 -l 0'
70 echo 'graph_vlabel # since start'
71 echo 'graph_category php'
72 echo 'requests.label Slow requests'
74 echo 'multigraph php_fpm_queue'
75 echo 'graph_title PHP-FPM Listen queue'
76 echo 'graph_args --base 1000 -l 0'
78 echo 'graph_vlabel Queue size'
79 echo 'graph_category php'
80 echo 'current.label Current'
81 echo 'max.label Highest'
82 echo 'len.label Capacity'
84 echo 'len.colour ffd660'
89 jsonblob
="$(curl $CURL_OPTS $URL)"
90 if ! echo "$jsonblob" | jq
-e >/dev
/null
; then
91 echo 'multigraph php_fpm_workers'
97 echo 'multigraph php_fpm_connections'
100 echo 'multigraph php_fpm_slow'
101 echo 'requests.value U'
103 echo 'multigraph php_fpm_queue'
104 echo 'current.value U'
111 echo 'multigraph php_fpm_workers'
112 echo "idle.value $(echo "$jsonblob" | jq '."idle processes"')"
113 echo "active.value $(echo "$jsonblob" | jq '."active processes"')"
114 echo "total.value $(echo "$jsonblob" | jq '."total processes"')"
115 echo "max.value $(echo "$jsonblob" | jq '."max active processes"')"
117 echo 'multigraph php_fpm_connections'
118 echo "rate.value $(echo "$jsonblob" | jq '."accepted conn"')"
120 echo 'multigraph php_fpm_slow'
121 echo "requests.value $(echo "$jsonblob" | jq '."slow requests"')"
123 echo 'multigraph php_fpm_queue'
124 echo "current.value $(echo "$jsonblob" | jq '."listen queue"')"
125 echo "max.value $(echo "$jsonblob" | jq '."max listen queue"')"
126 echo "len.value $(echo "$jsonblob" | jq '."listen queue len"')"