Home Directory

Search Exchange

Search All Sites

Nagios Live Webinars

Let our experts show you how Nagios can help your organization.

Contact Us

Phone: 1-888-NAGIOS-1
Email: sales@nagios.com

Login

Remember Me

Directory

fmdupre

Reviews(2)
byfmdupre, October 29, 2014
I changed the pluguin to be perfdata:
Now
- It returns 0 if the peer has been declared the system peer and lends its variables to the system variables.
- It returns 1 if the peer is a survivor, but not among the first six peers sorted by synchronization distance.
If the association is ephemeral, it may be demobilized to conserve resources.
- If it returns 2 if the peer is discarded as unreachable, synchronized to this server (synch loop) or outrageous synchronization distance.

#!/bin/sh
#
# michaszek@o2.pl
# Checks if the ntp service synchronises to the server time, gives ntp server IP and offset.
# Tested on Ubuntu 12.04.

/usr/sbin/ntpq -p | tail -1 | cut -c 1 >/tmp/check_ntp_server_sync.tmp
ETAT="$(cat /tmp/check_ntp_server_sync.tmp | cut -c 1)"
if [ "${ETAT}" == "*" ]
then
retour_nagios=0
fi
if [ "${ETAT}" == "#" ]
then
retour_nagios=1
fi
if [ "${ETAT}" == " " ]
then
retour_nagios=2
fi

HOST=$(/usr/sbin/ntpq -pn | tail -1 | awk '{print $1}' | cut -c 2-)
COMMAND=$(/usr/sbin/ntpq -pn | grep -F '*' | awk '{print $1}' | cut -d "*" -f 2)
OFFSET=$(/usr/sbin/ntpq -pn | tail -1 | awk '{print $9}')

if [ -z "$COMMAND" ]
then
echo "No synchronization with the time server : ${HOST} offset: ${OFFSET}; | Offset=${OFFSET}s;;"
exit ${retour_nagios}

else
echo "Synchronized with the time server : ${HOST} offset: ${OFFSET} | Offset=${OFFSET}s;;"
exit ${retour_nagios}
fi
Owner's reply

Sup! Great idea!

byfmdupre, October 28, 2014
I made the following change to no longer be rounding the numbers a point lower to 1.
Do not round numbers

for /f "tokens=*" %%t in ('w32tm /stripchart /computer:%time_server% /samples:1 /dataonly') do set output=%%t

if not "x%output:0x80072af9=%"=="x%output%" goto host_error
if not "x%output:0x800705B4=%"=="x%output%" goto comm_error
if not "x%output:error=%"=="x%output%" goto unknown_error
if not "x%output:)=%"=="x%output%" goto unknown_error

set time_org=%output:*, =%
set time=%time_org%
rem set time=%time_org:~1,-9%