root / plugins / other / uptime @ 8c941ed9
Historique | Voir | Annoter | Télécharger (1022 octets)
| 1 |
#!/bin/sh |
|---|---|
| 2 |
# |
| 3 |
# Plugin to get system uptime and kernel age |
| 4 |
# |
| 5 |
# Magic markers - optional - used by installation scripts and |
| 6 |
# munin-config: |
| 7 |
# |
| 8 |
#%# family=manual |
| 9 |
#%# capabilities=autoconf |
| 10 |
|
| 11 |
if [ "$1" = "autoconf" ]; then |
| 12 |
echo "yes" |
| 13 |
exit 0 |
| 14 |
fi |
| 15 |
|
| 16 |
if [ "$1" = "config" ]; then |
| 17 |
|
| 18 |
cat <<EOT |
| 19 |
graph_title Uptime |
| 20 |
graph_args --base 1000 -l 0 |
| 21 |
graph_vlabel days |
| 22 |
graph_category System |
| 23 |
compile.label kernel age |
| 24 |
compile.type GAUGE |
| 25 |
compile.min 0 |
| 26 |
compile.max 1000 |
| 27 |
compile.draw AREA |
| 28 |
uptime.label uptime |
| 29 |
uptime.type GAUGE |
| 30 |
uptime.min 0 |
| 31 |
uptime.max 1000 |
| 32 |
uptime.draw AREA |
| 33 |
EOT |
| 34 |
exit 0 |
| 35 |
fi |
| 36 |
|
| 37 |
LANG=C |
| 38 |
( |
| 39 |
/bin/date -j +'%s' |
| 40 |
/bin/date -jf '%a %b %d %T %Z %Y' \ |
| 41 |
"`/sbin/sysctl kern.version | /usr/bin/sed -Ee '2,9d;s/^kern.version: [^:]+: //'`" +'%s' |
| 42 |
/sbin/sysctl kern.boottime | /usr/bin/sed -Ee 's/.* sec = ([0-9+].*)\,.*/\1/' |
| 43 |
) | /usr/bin/awk ' |
| 44 |
BEGIN {
|
| 45 |
getline; now=$0; |
| 46 |
getline; compile=$0 |
| 47 |
getline; boot=$0; |
| 48 |
printf "compile.value %.3f\n", (now-compile)/86400 |
| 49 |
printf "uptime.value %.3f\n", (now-boot)/86400 |
| 50 |
}' |
