Skip to main content

Export Kea Metrics in the Prometheus Exposition Format

Project description

GitHub license GitHub tag (latest SemVer) PyPI - Version PyPI - Downloads

kea-exporter

Prometheus Exporter for the ISC Kea DHCP Server.

From v0.4.0 on Kea >=1.3.0 is required, as the configuration, specifically subnet information, will be read from the control socket.

Installation

Package versions via repology.org

The latest stable version can always be installed from PyPi:

$ pip install kea-exporter

and upgraded with:

$ pip install --upgrade kea-exporter

Docker

A docker image is available and can be configured with environment variables see usage section

$ docker pull ghcr.io/mweinelt/kea-exporter

Features

  • DHCP4 & DHCP6 Metrics (tested against Kea 2.4.1)

  • Configuration and statistics via control socket or http api

Currently not working:

  • Automatic config reload (through inotify)

Known Limitations

The following features are not supported yet, help is welcome.

  • Shared Networks

  • Custom Subnet Identifiers

Usage

Pass one or multiple Unix Domain Socket path or HTTP Control-Agent URLs to the kea-exporter executable. All other options are optional.

Usage: python -m kea_exporter [OPTIONS] TARGETS...

Options:
  -a, --address TEXT      Address that the exporter binds to.
  -p, --port INTEGER      Port that the exporter binds to.
  -i, --interval INTEGER  Minimal interval between two queries to Kea in
                          seconds.
  --client-cert PATH      Path to client certificate used to in HTTP requests
  --client-key PATH       Path to client key used in HTTP requests
  --version               Show the version and exit.
  --help                  Show this message and exit.

You can also configure the exporter using environment variables:

export ADDRESS="0.0.0.0"
export PORT="9547"
export INTERVAL="7.5"
export TARGETS="http://router.example.com:8000"
export CLIENT_CERT="/etc/kea-exporter/client.crt"
export CLIENT_KEY="/etc/kea-exporter/client.key"

Configure Control Socket

The exporter uses Kea’s control socket to request both configuration and statistics. Consult the documentation on how to set up the control socket:

HTTPS

If you need to validate a self-signed certificate on a Kea instance, you can set REQUESTS_CA_BUNDLE environment variable to a bundle CA path.

Permissions

Kea Exporter needs to be able to read and write on the socket, hence it’s permissions might need to be modified accordingly.

Grafana-Dashboard

A dashboard for this exporter is available at https://grafana.com/grafana/dashboards/12688.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kea_exporter-0.7.0.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

kea_exporter-0.7.0-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file kea_exporter-0.7.0.tar.gz.

File metadata

  • Download URL: kea_exporter-0.7.0.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.12.4 CPython/3.10.12

File hashes

Hashes for kea_exporter-0.7.0.tar.gz
Algorithm Hash digest
SHA256 927da2c1859cc96f74b607d69b32c5eeb534e9f2722d1cea60a34b3a0bbf62a9
MD5 23b500dddfb149128bfc875b9a715899
BLAKE2b-256 2fc716b41a242c032073cd076d4aefbfb020246d111829c479556408d707b32f

See more details on using hashes here.

File details

Details for the file kea_exporter-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: kea_exporter-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.12.4 CPython/3.10.12

File hashes

Hashes for kea_exporter-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4a974729a456341c953b8c17399efd36676ac344624fd8b9b67844f0bbeb43d3
MD5 dab4df86e94bd0d69eaa6c222d40e012
BLAKE2b-256 8240c546f092fead590eadf9835bf65680a8d31c37a62be3c3d488bde94cc739

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page