mirror of
https://github.com/Stichting-MINIX-Research-Foundation/pkgsrc-ng.git
synced 2025-09-14 06:45:30 -04:00
64 lines
1.5 KiB
Bash
Executable File
64 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Plugin to measure uptime. Especially the average and max values on the
|
|
# bigger graphs (yearly) can be interesting.
|
|
#
|
|
# $Log: uptime.in,v $
|
|
# Revision 1.1.1.1 2006/06/04 20:53:57 he
|
|
# Import the client version of the Munin system monitoring/graphing
|
|
# tool -- project homepage is at http://munin.sourceforge.net/
|
|
#
|
|
# This package has added support for NetBSD, via a number of new plugin
|
|
# scripts where specific steps needs to be taken to collect information.
|
|
#
|
|
# I also modified the ntp_ plugin script to make it possible to not
|
|
# plot the NTP poll delay, leaving just jitter and offset, which IMO
|
|
# produces a more telling graph.
|
|
#
|
|
#
|
|
#
|
|
# Magic markers - optional - used by installation scripts and
|
|
# munin-config:
|
|
#
|
|
#%# family=auto
|
|
#%# capabilities=autoconf
|
|
|
|
if [ "$1" = "autoconf" ]; then
|
|
if [ -x /sbin/sysctl ]; then
|
|
if /sbin/sysctl kern.boottime >/dev/null 2>&1; then
|
|
if [ -x /bin/date ]; then
|
|
echo yes
|
|
exit 0
|
|
else
|
|
echo no '(no /bin/date)'
|
|
exit 1
|
|
fi
|
|
else
|
|
echo no '(sysctl kern.boottime failed)' 2>&1
|
|
exit 1
|
|
fi
|
|
else
|
|
echo no '(no /sbin/sysctl)'
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
|
|
if [ "$1" = "config" ]; then
|
|
echo 'graph_title Uptime'
|
|
echo 'graph_args --base 1000 -l 0 '
|
|
echo 'graph_vlabel uptime in days'
|
|
echo 'uptime.label uptime'
|
|
echo 'uptime.draw AREA'
|
|
exit 0
|
|
fi
|
|
|
|
|
|
boottime=`/sbin/sysctl -n kern.boottime`
|
|
now=`/bin/date +%s`
|
|
|
|
awk -v boottime=$boottime -v now=$now </dev/null '
|
|
END {
|
|
printf "uptime.value %.2f\n", (now - boottime) / 86400;
|
|
}'
|