Skip to main content

Python application PyPI version

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

Overview

biqiq-discovery is a Prometheus service discovery for F5 devices managed through BigIQ management platform.

Labels naming (since 0.2.0)

All labels are returned prefixed as __meta_bigip_

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:
      - __meta_bigip_platform
      action: replace
      target_label: product
    - source_labels:
        - __meta_bigip_version
      action: replace
      target_label: version
    - source_labels:
        - __meta_bigip_clustered
      action: replace
      target_label: clustered
    - source_labels:
        - __meta_bigip_virtual
      action: replace
      target_label: virtual

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

Metadata

Release files for bigiq-discovery 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bigiq-discovery 0.2.0
File Size Uploaded Provenance Actions
bigiq-discovery-0.2.0.tar.gz 24.3 kB Without provenance Details for bigiq-discovery-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for bigiq-discovery 0.2.0
File Interpreter ABI Platform Actions
bigiq_discovery-0.2.0-py3-none-any.whl Python 3 none any Details for bigiq_discovery-0.2.0-py3-none-any.whl

Total release size: 55.3 kB

Release files / bigiq-discovery-0.2.0.tar.gz

Download URL bigiq-discovery-0.2.0.tar.gz
Size 24.3 kB
Tags Source
SHA-256 checksum
How to use checksums
ce1bdcabd501e8f793829906d5ea1b09f0e3fb27ec50187a12b4758d07869470
BLAKE2b-256 checksum
How to use checksums
1010a39e39e8c022c59a2c9a30b4863aa4f694151b8b50ccaccf4f1e45774799
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.4

Release files / bigiq_discovery-0.2.0-py3-none-any.whl

Download URL bigiq_discovery-0.2.0-py3-none-any.whl
Size 31.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f0adf2606c9eb2ee0443e67c10801b9d80311dc51fee4cfc8cfa43314922429
BLAKE2b-256 checksum
How to use checksums
c1f7ad4e80201a4c86a334455151987b6a0af453853f5886d17cf5fa6d65dfd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.4

Security for bigiq-discovery 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page