bind

package
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 20, 2019 License: GPL-3.0 Imports: 12 Imported by: 1

README

bind

This module will monitor one or more Bind(named) servers depending on configuration.

Requirements:

  • bind version 9.9+ with configured statistics-channels

It produces the following charts:

  1. Received Requests by IP version (IPv4, IPv6)
  2. Successful Queries
  3. Recursive Clients
  4. Queries by IP Protocol (TCP, UDP)
  5. Queries Analysis
  6. Received Updates
  7. Query Failures
  8. Query Failures Analysis
  9. Server Statistics
  10. Incoming Requests by OpCode
  11. Incoming Requests by Query Type

Per View Statistics (the following set will be added for each bind view):

  1. Resolver Active Queries
  2. Resolver Statistics
  3. Resolver Round Trip Timings
  4. Resolver Requests by Query Type
  5. Resolver Cache Hits
configuration

For all available options please see module configuration file.


Needs only url.

Here is an example for 2 servers:

jobs:
  - name: local
    url: http://127.0.0.1:8653/json/v1

  - name: local
    url: http://127.0.0.1:8653/xml/v3

Without configuration, module will use http://127.0.0.1:8653/json/v1

Views: by default module doesn't collect views statistics.

To enable it please configure permit_view:

jobs:
  - name: local
    url: http://127.0.0.1:8653/json/v1
    permit_view: '!_* *'

Syntax: simple patterns.

bind configuration

For detail information on how to get your bind installation ready, please refer to the bind statistics channel developer comments and to bind documentation or bind Knowledge Base article AA-01123.

Normally, you will need something like this in your named.conf.options:

statistics-channels {
        inet 127.0.0.1 port 8653 allow { 127.0.0.1; };
        inet ::1 port 8653 allow { ::1; };
};

(use the IPv4 or IPv6 line depending on what you are using, you can also use both)

Verify it works by running the following command:

curl "http://localhost:8653/json/v1/server"

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Bind

type Bind struct {
	module.Base
	Config `yaml:",inline"`
	// contains filtered or unexported fields
}

Bind Bind module.

func New

func New() *Bind

New creates Bind with default values.

func (Bind) Charts

func (b Bind) Charts() *Charts

Charts creates Charts.

func (*Bind) Check

func (b *Bind) Check() bool

Check makes check.

func (Bind) Cleanup

func (Bind) Cleanup()

Cleanup makes cleanup.

func (*Bind) Collect

func (b *Bind) Collect() map[string]int64

Collect collects metrics.

func (*Bind) Init

func (b *Bind) Init() bool

Init makes initialization.

type Chart

type Chart = module.Chart

Chart is an alias for module.Chart.

type Charts

type Charts = module.Charts

Charts is an alias for module.Charts.

type Config added in v0.5.0

type Config struct {
	web.HTTP   `yaml:",inline"`
	PermitView string `yaml:"permit_view"`
}

Config is the Bind module configuration.

type Dim

type Dim = module.Dim

Dim is an alias for module.Dim.

type Dims

type Dims = module.Dims

Dims is an alias for module.Dims.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL