Search Exchange
Search All Sites
Nagios Live Webinars
Let our experts show you how Nagios can help your organization.Login
Directory Tree
Directory
fmdupre
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
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%
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%