Get standard NTP query metrics from OpenNTPD using the ntpctl command.
Below is the documentation of the various headers returned from the NTP query
command when running
ntpctl -s peers.
- remote – The remote peer or server being synced to.
- wt – the peer weight
- tl – the peer trust level
- st (stratum) – The remote peer or server Stratum
- next – number of seconds until the next poll
- poll – polling interval in seconds
- delay – Round trip communication delay to the remote peer or server (milliseconds);
- offset – Mean offset (phase) in the times reported between this local host and the remote peer or server (RMS, milliseconds);
- jitter – Mean deviation (jitter) in the time reported for that remote peer or server (RMS of difference of multiple time samples, milliseconds);
[[inputs.openntpd]] ## Run ntpctl binary with sudo. # use_sudo = false ## Location of the ntpctl binary. # binary = "/usr/sbin/ntpctl" ## Maximum time the ntpctl binary is allowed to run. # timeout = "5ms"
It’s important to note that this plugin references ntpctl, which may require additional permissions to execute successfully. Depending on the user/group permissions of the user executing this plugin, you may need to alter the group membership, set facls, or use sudo.
Group membership (Recommended)
$ groups cua cua : cua $ usermod -a -G ntpd cua $ groups cua cua : cua ntpd
If you use this method, you will need the following in your circonus-unified-agent config:
[[inputs.openntpd]] use_sudo = true
You will also need to update your sudoers file:
$ visudo # Add the following lines: Cmnd_Alias NTPCTL = /usr/sbin/ntpctl cua ALL=(ALL) NOPASSWD: NTPCTL Defaults!NTPCTL !logfile, !syslog, !pam_session
Please use the solution you see as most appropriate.