Unbound Telegraf Input Plugin

Unbound is an open source Domain Name System (DNS) resolver. This means it translates host names understandable to humans, such as urls, into IP addresses understandable to computers. Unbound is validating, recursive, and caching. It’s focused on security and privacy and allows users to encrypt their communication.

Why use a Telegraf plugin for Unbound?

The Unbound Telegraf Input Plugin captures statistics from Unbound and allows users to monitor things like number of queries, number of cache hits, average recursion time, and more. Knowing these statistics can help you make more informed decisions about how you want to utilize Unbound on your computer.

How to monitor Unbound using the Telegraf plugin

To use this plugin, you might need to update your permissions so it can reference unbound-control. You may also need to alter group membership, set facls, or use sudo depending on your user/group permissions. If you use sudo you will need to specify so in your Telegraf configuration and update your sudoers file.</p>

The statistics provided by unbound-control and the specific ones you gather will depend on your Unbound configuration. Histogram-related statistics are not collected and you can set whether you want to include extended statistics in your Unbound configuration. Collecting these statistics to view in Telegraf can allow you to get a view of the inner workings of Unbound on your computer as it translates urls, VPNs, multiplayer games, and more into IP addresses.

Key Unbound metrics to use for monitoring

  • unbound
    • fields:
      • total_num_queries
      • total_num_cachehits
      • total_num_cachemiss
      • total_num_prefetch
      • total_num_recursivereplies
      • total_requestlist_avg
      • total_requestlist_max
      • total_requestlist_overwritten
      • total_requestlist_exceeded
      • total_requestlist_current_all
      • total_requestlist_current_user
      • total_recursion_time_avg
      • total_recursion_time_median
      • time_now time_up
      • time_elapsed
      • mem_total_sbrk
      • mem_cache_rrset
      • mem_cache_message
      • mem_mod_iterator
      • mem_mod_validator
      • num_query_type_A
      • num_query_type_PTR
      • num_query_type_TXT
      • num_query_type_AAAA
      • num_query_type_SRV
      • num_query_type_ANY
      • num_query_class_IN
      • num_query_opcode_QUERY
      • num_query_tcp num_query_ipv6
      • num_query_flags_QR
      • num_query_flags_AA
      • num_query_flags_TC
      • num_query_flags_RD
      • num_query_flags_RA
      • num_query_flags_Z
      • num_query_flags_AD
      • num_query_flags_CD
      • num_query_edns_present
      • num_query_edns_DO
      • num_answer_rcode_NOERROR
      • num_answer_rcode_SERVFAIL
      • num_answer_rcode_NXDOMAIN
      • num_answer_rcode_nodata
      • num_answer_secure
      • num_answer_bogus
      • num_rrset_bogus
      • unwanted_queries
      • unwanted_replies
  • unbound_thread
    • tags:
      • thread
    • fields:
      • num_queries
      • num_cachehits
      • num_cachemiss
      • num_prefetch
      • num_recursivereplies
      • requestlist_avg
      • requestlist_max
      • requestlist_overwritten
      • requestlist_exceeded
      • requestlist_current_all
      • requestlist_current_user
      • recursion_time_avg
      • recursion_time_median
For more information, please check out the documentation.
Project URL   Documentation

Related resources