Skip to main content

A Prometheus file and http discovery for .......

Project description

Python application PyPI version

biqiq-discovery a Prometheus service discovery for F5 BigIQ management platform

Overview

Configuration

Example:

bigiq:
  host: www.bigiq.io
  port: 443
  username: user
  password: password

Environment variables

  • BIGIQ_DISCOVERY_CONFIG - the path to the above config file, default is ./config.yml
  • BIGIQ_DISCOVERY_PROMETHEUS_SD_FILE_DIRECTORY - the output directory for the file discovery files used in your Prometheus configuration. Each adom will have its own file.
  • BIGIQ_DISCOVERY_LOG_LEVEL - the log level, default WARNING
  • BIGIQ_DISCOVERY_LOG_FILE - the log file, default stdout
  • BIGIQ_DISCOVERY_HOST - the ip to expose the exporter on, default 0.0.0.0 - only applicable if running in server mode
  • BIGIQ_DISCOVERY_PORT - the port to expose the exporter on, default 9694
  • BIGIQ_DISCOVERY_BASIC_AUTH_ENABLED - use basic auth if set to anything, default false
  • BIGIQ_DISCOVERY_BASIC_AUTH_USERNAME - the username
  • BIGIQ_DISCOVERY_BASIC_AUTH_PASSWORD - the password
  • BIGIQ_DISCOVERY_CACHE_TTL - the ttl in seconds to keep the result from Fortimanager in cache, default 60

Run

File service discovery

pip install temp-discovery
BIGIQ_DISCOVERY_CONFIG=config.yml
BIGIQ_DISCOVERY_PROMETHEUS_SD_FILE_DIRECTORY=/etc/prometheus/file_sd/fortigate
python -m bigiq_discovery

Http service discovery

pip install temp-discovery
BIGIQ_DISCOVERY_CONFIG=config.yml
BIGIQ_DISCOVERY_BASIC_AUTH_ENABLED=true
BIGIQ_DISCOVERY_BASIC_AUTH_USERNAME=foo
BIGIQ_DISCOVERY_BASIC_AUTH_PASSWORD=bar
BIGIQ_DISCOVERY_LOG_LEVEL=INFO
python -m temp_discovery --server

Test discovery by curl

curl -ufoo:bar localhost:9694/prometheus-sd-targets

Prometheus job configuration

Example using the discovery with blackbox exporter

- job_name: 'f5-cluster-ping'
  metrics_path: /probe
  params:
    module: [icmp]
  http_sd_configs:
    - url: http://localhost:9694/prometheus-sd-targets
      refresh_interval: 60s
      basic_auth:
        username: foo
        password: bar

  relabel_configs:
    - source_labels: [ __address__ ]
      regex: '(.+):.*'
      target_label: __param_target
    - source_labels: [ __param_target ]
      target_label: instance
    - target_label: __address__
      replacement: 'localhost:9115'
    

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

bigiq-discovery-0.1.1.tar.gz (23.9 kB view hashes)

Uploaded Source

Built Distribution

bigiq_discovery-0.1.1-py3-none-any.whl (30.9 kB view hashes)

Uploaded Python 3

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