sonus_exporter

command module
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Apr 28, 2023 License: Apache-2.0 Imports: 25 Imported by: 0

README

Sonus Exporter for Prometheus

The Sonus Exporter is a Golang-based project that implements the multi-target exporter pattern and exposes metrics for a Ribbon SBC (Session Border Controller) in a format that can be scraped by Prometheus.

This version works with SBC v11.1+ utilizing the new RESTCONF API

Features

  • Multi-target exporter pattern: Can scrape metrics from multiple SBC instances.
  • Exposes metrics in Prometheus format for easy ingestion by Prometheus.
  • Can be easily integrated into a Prometheus-based monitoring system.

Requirements

  • Golang 1.16 or higher
  • Ribbon SBC

Scaling

A single instance of sonus_exporter can be run for thousands of devices.

Usage

Installation

Binaries can be downloaded from the Github releases page and need no special installation.

We also provide a sample systemd unit file.

Running

Start sonus_exporter as a daemon or from CLI:

./sonus_exporter

Visit http://localhost:9700/probe?target=1.2.3.4 where 1.2.3.4 is the IP or FQDN of the sonus device from which to get metrics.

Configuration

The default configuration file name is sonus.yml (currently unused).

The username/password used to connect to the SBCs is configured via the SONUS_USER and SONUS_PASSWORD environment variables. The same username/password combination is used for all target SBCs.

Prometheus Configuration

target can be passed as a parameter through relabelling.

Example config:

scrape_configs:
  - job_name: 'sonus'
    static_configs:
      - targets:
        - 192.168.1.2  # sonus device.
        - sbc.local # sonus device.
    metrics_path: /probe
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 127.0.0.1:9700  # The sonus exporter's real hostname:port.

Similarly to blackbox_exporter, sonus_exporter is meant to run on a few central machines and can be thought of like a "Prometheus proxy".

TLS and basic authentication

The sonus Exporter supports TLS and basic authentication. This enables better control of the various HTTP endpoints.

To use TLS and/or basic authentication, you need to pass a configuration file using the --web.config.file parameter. The format of the file is described in the exporter-toolkit repository.

Note that the TLS and basic authentication settings affect all HTTP endpoints: /metrics for scraping, /sonus for scraping sonus devices, and the web UI.

License

The Sonus Exporter is licensed under the Apache License.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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