telegraf/plugins/outputs/prometheus_client
Daniel Nelson e8d9add2d1
Expire metrics on query in addition to on add ()
Ensures that expired metrics are removed even when no new data is sent
to the output.
2020-02-04 16:12:23 -07:00
..
v1 Replace colon chars in prometheus output labels with metric_version=1 () 2019-12-10 12:59:16 -08:00
v2 Expire metrics on query in addition to on add () 2020-02-04 16:12:23 -07:00
README.md Add prometheus serializer and use it in prometheus output () 2019-11-26 15:46:31 -08:00
prometheus_client.go Add prometheus serializer and use it in prometheus output () 2019-11-26 15:46:31 -08:00
prometheus_client_v1_test.go Replace colon chars in prometheus output labels with metric_version=1 () 2019-12-10 12:59:16 -08:00
prometheus_client_v2_test.go Add prometheus round trip unit tests () 2019-11-26 17:31:36 -08:00

README.md

Prometheus Output Plugin

This plugin starts a Prometheus Client, it exposes all metrics on /metrics (default) to be polled by a Prometheus server.

Configuration

# Publish all metrics to /metrics for Prometheus to scrape
[[outputs.prometheus_client]]
  ## Address to listen on.
  listen = ":9273"

  ## Metric version controls the mapping from Telegraf metrics into
  ## Prometheus format.  When using the prometheus input, use the same value in
  ## both plugins to ensure metrics are round-tripped without modification.
  ##
  ##   example: metric_version = 1; deprecated in 1.13
  ##            metric_version = 2; recommended version
  # metric_version = 1

  ## Use HTTP Basic Authentication.
  # basic_username = "Foo"
  # basic_password = "Bar"

  ## If set, the IP Ranges which are allowed to access metrics.
  ##   ex: ip_range = ["192.168.0.0/24", "192.168.1.0/30"]
  # ip_range = []

  ## Path to publish the metrics on.
  # path = "/metrics"

  ## Expiration interval for each metric. 0 == no expiration
  # expiration_interval = "60s"

  ## Collectors to enable, valid entries are "gocollector" and "process".
  ## If unset, both are enabled.
  # collectors_exclude = ["gocollector", "process"]

  ## Send string metrics as Prometheus labels.
  ## Unless set to false all string metrics will be sent as labels.
  # string_as_label = true

  ## If set, enable TLS with the given certificate.
  # tls_cert = "/etc/ssl/telegraf.crt"
  # tls_key = "/etc/ssl/telegraf.key"

  ## Set one or more allowed client CA certificate file names to
  ## enable mutually authenticated TLS connections
  # tls_allowed_cacerts = ["/etc/telegraf/clientca.pem"]

  ## Export metric collection time.
  # export_timestamp = false