• Stars
    star
    176
  • Rank 216,987 (Top 5 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created almost 8 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Prometheus exporter for Unbound.

Prometheus Unbound exporter

This repository provides code for a simple Prometheus metrics exporter for the Unbound DNS resolver. This exporter connects to Unbounds TLS control socket and sends the stats_noreset command, causing Unbound to return metrics as key-value pairs. The metrics exporter converts Unbound metric names to Prometheus metric names and labels by using a set of regular expressions.


Prerequisites

Go 1.16 or above is required.

Installation

go install github.com/letsencrypt/unbound_exporter@latest

This will install the binary in $GOBIN, or $HOME/go/bin if $GOBIN is unset.

Updating dependencies

go get -u
go mod tidy

Usage

To show all CLI flags available

$ unbound_exporter -h

Scrape metrics from the exporter

$ curl 127.0.0.1:9167/metrics | grep '^unbound_up'
unbound_up 1

From the Unbound statistics doc: Unbound has an option to enable extended statistics collection. If enabled, more statistics are collected, for example what types of queries are sent to the resolver. Otherwise, only the total number of queries is collected. Add the following to your unbound.conf.

server:
    extended-statistics: yes

More Repositories

1

boulder

An ACME-based certificate authority, written in Go.
Go
5,117
star
2

acme-spec

ACME Specification
1,134
star
3

website

Let's Encrypt Website and Documentation
HTML
835
star
4

pebble

A miniature version of Boulder, Pebble is a small RFC 8555 ACME test server not suited for a production certificate authority.
Go
621
star
5

openzfs-nvme-databases

572
star
6

ct-woodpecker

A tool to monitor a certificate transparency log for operational problems
Go
182
star
7

pkcs11key

An interface to PKCS#11 devices that satisfies the crypto.Signer interface
Go
90
star
8

dns-lots-of-lookups

dnslol is a command line tool for performing lots of DNS lookups.
Go
49
star
9

helloworld

Saying an encrypted hello to the entire world with our very first certificate we signed.
HTML
36
star
10

cp-cps

ISRG / Let's Encrypt CP and CPS Documents
Python
32
star
11

goose

Copy of https://bitbucket.org/liamstask/goose/
Go
31
star
12

hashicorp-lessons

HCL
29
star
13

ceremony-demos

Demo files demonstrating what the new hierarchy we generate in 2024 will look like.
Shell
19
star
14

challtestsrv

Small TEST-ONLY server for mock DNS & responding to HTTP-01, DNS-01, and TLS-ALPN-01 ACME challenges.
Go
19
star
15

gorepotemplate

A template for starting a new Go project with CI and other standard configuration used at Let's Encrypt/ISRG.
Go
11
star
16

ct-log-metadata

Metadata regarding Let's Encrypt's Certificate Transparency Logs
Python
9
star
17

attache

A sidecar that allows for effortless scaling of a Redis Cluster
Go
9
star
18

www_valid_revoked_expired

Website endpoints for valid,revoked and expired certificates chaining to ISRG Root
HTML
8
star
19

ctile

Go
7
star
20

mariadb-sequential-partition-manager-py

Manage MariaDB Partitions based on Autoincrement IDs
Python
7
star
21

boulder-release-process

A repo for documenting and demonstrating the Boulder release process.
Python
6
star
22

ctlp-diff

Track and diff Certificate Transparency Log Policies
6
star
23

spf-flattener

Go
2
star
24

crl-monitor

CRL Monitor
Go
1
star