This plugin gathers stats from NSD - an authoritative DNS name server.
# A plugin to collect stats from the NSD DNS resolver
[[inputs.nsd]]
## Address of server to connect to, optionally ':port'. Defaults to the
## address in the nsd config file.
server = "127.0.0.1:8953"
## If running as a restricted user you can prepend sudo for additional access:
# use_sudo = false
## The default location of the nsd-control binary can be overridden with:
# binary = "/usr/sbin/nsd-control"
## The default location of the nsd config file can be overridden with:
# config_file = "/etc/nsd/nsd.conf"
## The default timeout of 1s can be overridden with:
# timeout = "1s"
It's important to note that this plugin references nsd-control, 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):
$ groups telegraf
telegraf : telegraf
$ usermod -a -G nsd telegraf
$ groups telegraf
telegraf : telegraf nsd
Sudo privileges: If you use this method, you will need the following in your telegraf config:
[[inputs.nsd]]
use_sudo = true
You will also need to update your sudoers file:
$ visudo
# Add the following line:
Cmnd_Alias NSDCONTROLCTL = /usr/sbin/nsd-control
telegraf ALL=(ALL) NOPASSWD: NSDCONTROLCTL
Defaults!NSDCONTROLCTL !logfile, !syslog, !pam_session
Please use the solution you see as most appropriate.
This is the full list of stats provided by nsd-control. In the output, the dots in the nsd-control stat name are replaced by underscores (see https://www.nlnetlabs.nl/documentation/nsd/nsd-control/ for details).
-
nsd
- fields:
- num_queries
- time_boot
- time_elapsed
- size_db_disk
- size_db_mem
- size_xfrd_mem
- size_config_disk
- size_config_mem
- num_type_TYPE0
- num_type_A
- num_type_NS
- num_type_MD
- num_type_MF
- num_type_CNAME
- num_type_SOA
- num_type_MB
- num_type_MG
- num_type_MR
- num_type_NULL
- num_type_WKS
- num_type_PTR
- num_type_HINFO
- num_type_MINFO
- num_type_MX
- num_type_TXT
- num_type_RP
- num_type_AFSDB
- num_type_X25
- num_type_ISDN
- num_type_RT
- num_type_NSAP
- num_type_SIG
- num_type_KEY
- num_type_PX
- num_type_AAAA
- num_type_LOC
- num_type_NXT
- num_type_SRV
- num_type_NAPTR
- num_type_KX
- num_type_CERT
- num_type_DNAME
- num_type_OPT
- num_type_APL
- num_type_DS
- num_type_SSHFP
- num_type_IPSECKEY
- num_type_RRSIG
- num_type_NSEC
- num_type_DNSKEY
- num_type_DHCID
- num_type_NSEC3
- num_type_NSEC3PARAM
- num_type_TLSA
- num_type_SMIMEA
- num_type_CDS
- num_type_CDNSKEY
- num_type_OPENPGPKEY
- num_type_CSYNC
- num_type_SPF
- num_type_NID
- num_type_L32
- num_type_L64
- num_type_LP
- num_type_EUI48
- num_type_EUI64
- num_type_TYPE252
- num_type_TYPE253
- num_type_TYPE255
- num_opcode_QUERY
- num_opcode_NOTIFY
- num_class_CLASS0
- num_class_IN
- num_class_CH
- num_rcode_NOERROR
- num_rcode_FORMERR
- num_rcode_SERVFAIL
- num_rcode_NXDOMAIN
- num_rcode_NOTIMP
- num_rcode_REFUSED
- num_rcode_YXDOMAIN
- num_rcode_NOTAUTH
- num_edns
- num_ednserr
- num_udp
- num_udp6
- num_tcp
- num_tcp6
- num_tls
- num_tls6
- num_answer_wo_aa
- num_rxerr
- num_txerr
- num_raxfr
- num_truncated
- num_dropped
- zone_master
- zone_slave
- fields:
-
nsd_servers
- tags:
- server
- fields:
- queries
- tags: