telegraf/plugins/parsers/prometheusremotewrite
Dominik Rosiek 348c18db75
feat(http_listener_v2): allows multiple paths and add path_tag (#9529)
2021-07-27 16:10:50 -05:00
..
README.md feat(http_listener_v2): allows multiple paths and add path_tag (#9529) 2021-07-27 16:10:50 -05:00
parser.go Remove error return type from metric.New method (#9116) 2021-04-13 14:40:03 -04:00
parser_test.go Bump prometheus dependency to v2.21.0 (#8795) 2021-03-25 11:18:50 -05:00

README.md

Prometheus remote write

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