roger

command module
v0.0.0-...-081eea5 Latest Latest
Warning

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

Go to latest
Published: Dec 29, 2022 License: Apache-2.0, MIT Imports: 11 Imported by: 0

README

Roger

build status

Prometheus exporter for dnsmasq (DNS and DHCP daemon) and networking metrics.

Features

  • Scrape DNS related metrics from a local dnsmasq server
  • Scrape networking related metrics from the local machine

Building

To build from source you'll need Go 1.16 installed.

git clone git@github.com:56quarters/roger.git && cd roger
make build

The roger binary will then be in the root of the checkout.

Install

At the moment, roger is GNU/Linux specific. As such, these instructions assume a GNU/Linux system.

To install Roger after building as described above:

  • Copy the binary to /usr/local/bin
sudo cp roger /usr/local/bin/
  • Copy and enable the Systemd unit
sudo cp ext/roger.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable roger.service
  • Start the daemon
sudo systemctl start roger.service

Usage

Roger is meant to run on a machine acting as a DNS and DHCP server for your network (something running dnsmasq). It defaults to collecting metrics from a locally running dnsmasq server.

Prometheus metrics are exposed on port 9779 at /metrics by default. Once Roger is running, configure scrapes of it by your Prometheus server. Add the host running Roger as a target under the Prometheus scrape_configs section as described by the example below.

# Sample config for Prometheus.

global:
  scrape_interval:     15s
  evaluation_interval: 15s
  external_labels:
      monitor: 'my_prom'

scrape_configs:
  - job_name: roger
    static_configs:
      - targets: ['example:9779']

For more information about customizing how Roger is run, see ./roger --help.

Development

To build a binary:

make build

To build a tagged release binary:

make build-dist

To build a Docker image

make image

To build a tagged release Docker image

make image-dist

To run tests

make test

To run lints

make lint

License

Licensed under either of

at your option.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg

Jump to

Keyboard shortcuts

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