Skip to content
Florian Forster edited this page Nov 26, 2023 · 1 revision
Name: BIND plugin
Type: read
Callbacks: config, init, read, shutdown
Status: supported
FirstVersion: 4.6
Copyright: 2009 Bruno Prémont, 2009 Florian octo Forster
License: GPLv2
Manpage: collectd.conf(5)
See also: List of Plugins

Description

Starting with BIND 9.5.0, the most widely used DNS server software provides extensive statistics about queries, responses and lots of other information. The BIND plugin retrieves this information that's encoded in XML and provided via HTTP and submits the values to collectd.

This differs from the approach taken by the DNS plugin: The DNS plugin uses libpcap to capture (“sniff”) the network traffic and analyzes the DNS packets itself. Because it received the information from the BIND daemon, the BIND plugin can provide a level of detail the DNS plugin can't achieve, because it's missing the required information or acquiring that information would be too hard.

To see all the statistics provided by BIND, configure the statistics-channels as outlined below and point an XML-enabled browser to the appropriate port, for example http://localhost:8053/. The statistics recognized and handled by collectd are:

Global statistics

  • OpCodes
  • Query types (A, MX, AAAA, …)
  • Overall server statistics (#Queries, #Responses, …)
  • Zone maintenance statistics (#Notifications, #Updates, …)
  • Resolver statistics (usually empty)
  • Memory statistics

Per-view statistics

  • Query types
  • Resolver statistics (#Queries, #Responses, #NXDOMAIN, …)
  • RR-set cache statistics (#entries by type)

Per-zone statistics

  • Overall statistics (Success, #NXRRSET, …)

Synopsis

BIND configuration:

 statistics-channels {
   inet 127.0.0.1 port 8053;
 };

collectd configuration:

 <Plugin "bind">
   <nowiki>URL "http://localhost:8053/"</nowiki>
   OpCodes         true
   QTypes          true

   ServerStats     true
   ZoneMaintStats  true
   ResolverStats   false
   MemoryStats     true

   <View "_default">
     QTypes        true
     ResolverStats true
     CacheRRSets   true

     Zone "127.in-addr.arpa/IN"
   </View>
 </Plugin>

Example graphs

Resolver specific graphs

Resolver cache hits Queries hitting resolver Responses to resolver RCode of response to resolver

Global statistics

Queries agains auth server Responses of auth server

Dependencies

See also

Clone this wiki locally