telegraf/plugins/parsers/prometheusremotewrite
Paweł Żak c4dbe65732
chore(linters): Bump golangci-lint to v1.56.1 (#14759)
2024-02-12 23:26:10 +01:00
..
README.md chore: Fix readme linter errors for processor, aggregator, and parser plugins (#10960) 2022-06-06 17:04:28 -06:00
parser.go chore(linters): Bump golangci-lint to v1.56.1 (#14759) 2024-02-12 23:26:10 +01:00
parser_test.go chore(parsers): Add benchmarks for avro, collectd, prometheus remote write (#14303) 2023-11-16 11:14:03 +01:00

README.md

Prometheus Remote Write Parser Plugin

Converts prometheus remote write samples directly into Telegraf metrics. It can be used with http_listener_v2. There are no additional configuration options for Prometheus Remote Write Samples.

Configuration

[[inputs.http_listener_v2]]
  ## Address and port to host HTTP listener on
  service_address = ":1234"

  ## Paths to listen to.
  paths = ["/receive"]

  ## Data format to consume.
  data_format = "prometheusremotewrite"

Example Input

prompb.WriteRequest{
        Timeseries: []*prompb.TimeSeries{
            {
                Labels: []*prompb.Label{
                    {Name: "__name__", Value: "go_gc_duration_seconds"},
                    {Name: "instance", Value: "localhost:9090"},
                    {Name: "job", Value: "prometheus"},
                    {Name: "quantile", Value: "0.99"},
                },
                Samples: []prompb.Sample{
                    {Value: 4.63, Timestamp: time.Date(2020, 4, 1, 0, 0, 0, 0, time.UTC).UnixNano()},
                },
            },
        },
    }

Example Output

prometheus_remote_write,instance=localhost:9090,job=prometheus,quantile=0.99 go_gc_duration_seconds=4.63 1614889298859000000

For alignment with the InfluxDB v1.x Prometheus Remote Write Spec