Projet

Général

Profil

Paste
Télécharger au format
Statistiques
| Branche: | Révision:

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
}'