munin-contrib/plugins/ntp/ntpdate_

51 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
#
# Plugin to monitor clock offset and delay, using ntpdate
#
# Parameters understood:
#
# config (required)
#
# Author: Rune Nordbøe Skillingstad <rune.skillingstad@ntnu.no>
#
# Magic markers - optional - used by installation scripts and
# munin-node-configure:
#
#%# family=manual
#%# capabilities=
#
NTPDATE="/usr/sbin/ntpdate"
PEER=$(basename $0 | sed -e 's/^ntpdate_//' -e 's/_/./g')
if [ ! -x "$NTPDATE" ]; then
echo "Can't find ntpdate executable"
exit 1
fi
if [ "$PEER" = "" ]; then
echo "Unknown peer"
exit 1
fi
if [ "$1" = "config" ]; then
echo "graph_title NTP offset and delay to peer $PEER"
echo "graph_category time"
echo "graph_args --base 1000 --vertical-label msec"
echo "offset.label Offset"
echo "offset.draw LINE2"
echo "delay.label Delay"
echo "delay.draw LINE2"
exit 0
fi
LANG=en_US
DATA=($($NTPDATE -q $PEER | awk '/^server.*offset/{gsub(/,/,"");if(dela==0||$8<dela){offs=$6;dela=$8;}}END{print offs*1000,dela*1000;}'))
[ -z "$DATA" -o "x$DATA" = "x0" ] && exit 1
echo "offset.value ${DATA[0]}"
echo "delay.value ${DATA[1]}"
exit 0