telegraf/plugins/outputs/prometheus_client
Sven Rebhan fe8467539a
feat(inputs.influxdb_listener): Add token based authentication (#13610)
2023-07-24 16:08:16 -06:00
..
v1 fix(outputs.prometheus_client): Fix export_timestamp for v1 metric type (#13169) 2023-05-02 13:46:57 +02:00
v2 chore(serializers.prometheus): Migrate to new-style framework (#13347) 2023-05-31 11:02:19 -06:00
README.md chore: Enable G112 and G114 rules for gosec (#12986) 2023-04-03 15:23:05 +02:00
prometheus_client.go feat(inputs.influxdb_listener): Add token based authentication (#13610) 2023-07-24 16:08:16 -06:00
prometheus_client_v1_test.go feat(inputs.prometheus): Always apply kubernetes label and field selectors (#13624) 2023-07-21 11:00:54 +02:00
prometheus_client_v2_test.go feat(inputs.prometheus): Always apply kubernetes label and field selectors (#13624) 2023-07-21 11:00:54 +02:00
sample.conf chore: Enable G112 and G114 rules for gosec (#12986) 2023-04-03 15:23:05 +02: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.

Global configuration options

In addition to the plugin-specific configuration settings, plugins support additional global and plugin configuration settings. These settings are used to modify metrics, tags, and field or create aliases and configure ordering, etc. See the CONFIGURATION.md for more details.

Configuration

# Configuration for the Prometheus client to spawn
[[outputs.prometheus_client]]
  ## Address to listen on.
  listen = ":9273"

  ## Maximum duration before timing out read of the request
  # read_timeout = "10s"
  ## Maximum duration before timing out write of the response
  # write_timeout = "10s"

  ## Metric version controls the mapping from Prometheus metrics into Telegraf metrics.
  ## See "Metric Format Configuration" in plugins/inputs/prometheus/README.md for details.
  ## Valid options: 1, 2
  # 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

Metrics

Prometheus metrics are produced in the same manner as the prometheus serializer.