telegraf/plugins/inputs/openntpd/README.md

97 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# OpenNTPD Input Plugin
Get standard NTP query metrics from OpenNTPD ([OpenNTPD - a FREE, easy to use
implementation of the Network Time Protocol](http://www.openntpd.org/)).
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);
### Configuration:
```toml
# Get standard NTP query metrics, requires ntpctls executable
# provided by openntpd packages
[[inputs.openntpd]]
## If running as a restricted user you can prepend sudo for additional access:
#use_sudo = false
## The default location of the ntpctl binary can be overridden with:
binary = "/usr/sbin/ntpctl"
## The default timeout of 1000ms can be overriden with (in milliseconds):
#timeout = 1000
```
### Measurements & Fields:
- ntpctl
- delay (float, milliseconds)
- jitter (float, milliseconds)
- offset (float, milliseconds)
- poll (int, seconds)
- next (int,,seconds)
- wt (int)
- tl (int)
### Tags:
- All measurements have the following tags:
- remote
- stratum
### Permissions:
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 telegraf user executing this
plugin, you may need to alter the group membership, set facls, or use sudo.
**Group membership (Recommended)**:
```bash
$ groups telegraf
telegraf : telegraf
$ usermod -a -G ntpd telegraf
$ groups telegraf
telegraf : telegraf ntpd
```
**Sudo privileges**:
If you use this method, you will need the following in your telegraf config:
```toml
[[inputs.openntpd]]
use_sudo = true
```
You will also need to update your sudoers file:
```bash
$ visudo
# Add the following line:
telegraf ALL=(ALL) NOPASSWD: /usr/sbin/ntpctl
```
Please use the solution you see as most appropriate.
### Example Output:
```
$ telegraf --config ~/ws/telegraf.conf --input-filter openntpd --test
* Plugin: openntpd, Collection 1
> openntpd,remote=194.57.169.1,stratum=2,host=localhost tl=10i,poll=1007i,
offset=2.295,jitter=3.896,delay=53.766,next=266i,wt=1i 1514454299000000000
```