Discussion:
"Sysctl as a Service" for influxdb / telegraf
Eitan Adler
2018-04-29 05:24:00 UTC
Permalink
Resurrecting a somewhat old thread:

I've been talking with the maintainer of telegraf about implementing
an importer for the Prometheus exporter. They mentioned that they'd
prefer a slightly different format. I'd like to add a new independent
application similar to prometheus_sysctl_exporter for the influx wire
format.

Why independent? The set of options that each offer differ and the two
formats will grow more different over time. For example prometheus
supports descriptions, while influx support data types.

Is there any objections to adding another application? If so, would a
new output format for the existing binary be okay?

References:
Upstream issue: https://github.com/influxdata/telegraf/issues/4060
Proof of Concept: C code: https://ptpb.pw/At9H/c. I'm likely to factor
out the common functions and include them as a single file when I
commit.
Original thread:
https://lists.freebsd.org/pipermail/freebsd-hackers/2016-December/050283.html
Wire format: https://docs.influxdata.com/influxdb/v1.5/write_protocols/line_protocol_tutorial/
--
Eitan Adler
Steven Hartland
2018-04-29 09:30:33 UTC
Permalink
IMO if you were to add a new format the name of the binary should change
too so it’s generic such as just sysctl_exporter.
Post by Eitan Adler
I've been talking with the maintainer of telegraf about implementing
an importer for the Prometheus exporter. They mentioned that they'd
prefer a slightly different format. I'd like to add a new independent
application similar to prometheus_sysctl_exporter for the influx wire
format.
Why independent? The set of options that each offer differ and the two
formats will grow more different over time. For example prometheus
supports descriptions, while influx support data types.
Is there any objections to adding another application? If so, would a
new output format for the existing binary be okay?
Upstream issue: https://github.com/influxdata/telegraf/issues/4060
Proof of Concept: C code: https://ptpb.pw/At9H/c. I'm likely to factor
out the common functions and include them as a single file when I
commit.
https://lists.freebsd.org/pipermail/freebsd-hackers/2016-December/050283.html
https://docs.influxdata.com/influxdb/v1.5/write_protocols/line_protocol_tutorial/
--
Eitan Adler
_______________________________________________
https://lists.freebsd.org/mailman/listinfo/freebsd-hackers
Ed Schouten
2018-04-29 11:47:25 UTC
Permalink
Hi Eitan.
Post by Eitan Adler
I've been talking with the maintainer of telegraf about implementing
an importer for the Prometheus exporter. They mentioned that they'd
prefer a slightly different format.
Not that I want to block any progress, maybe it makes sense to point
the maintainer of Telegraf here:

https://github.com/RichiH/OpenMetrics

Apparently, the PrometheusDB, Influx and Monarch/Stackdriver authors
(see CONTRIBUTORS.md) are working on standardising the Prometheus
metrics format. Maybe it makes sense for the Telegraf developers to
join that effort?
--
Ed Schouten <***@nuxi.nl>
Nuxi, 's-Hertogenbosch, the Netherlands
Eitan Adler
2018-04-29 15:20:18 UTC
Permalink
Post by Ed Schouten
Hi Eitan.
Post by Eitan Adler
I've been talking with the maintainer of telegraf about implementing
an importer for the Prometheus exporter. They mentioned that they'd
prefer a slightly different format.
Not that I want to block any progress, maybe it makes sense to point
https://github.com/RichiH/OpenMetrics
Apparently, the PrometheusDB, Influx and Monarch/Stackdriver authors
(see CONTRIBUTORS.md) are working on standardising the Prometheus
metrics format. Maybe it makes sense for the Telegraf developers to
join that effort?
Influx and Telegraf are developed by the same company. They are also
CCed on email.

I'll let them reply with their thoughts
--
Eitan Adler
Ed Schouten
2018-04-29 22:01:54 UTC
Permalink
Hi Eitan,
Post by Eitan Adler
I've been talking with the maintainer of telegraf about implementing
an importer for the Prometheus exporter. They mentioned that they'd
prefer a slightly different format. I'd like to add a new independent
application similar to prometheus_sysctl_exporter for the influx wire
format.
I just browsed through the Telegraf GitHub page and noticed that
Telegraf even has integrated support for parsing metrics in
Prometheus' format:

https://github.com/influxdata/telegraf/tree/master/plugins/inputs/prometheus

Considering this and the ongoing standardisation effort, maybe it
makes more sense to stick to a single exporter? We can consider
extending the man page to mention that it can also be used in
combination with Telegraf.
--
Ed Schouten <***@nuxi.nl>
Nuxi, 's-Hertogenbosch, the Netherlands
Daniel Nelson
2018-05-01 01:21:04 UTC
Permalink
Post by Ed Schouten
Considering this and the ongoing standardisation effort, maybe it
makes more sense to stick to a single exporter? We can consider
extending the man page to mention that it can also be used in
combination with Telegraf.
I am supportive of doing this with either the Prometheus format or via
InfluxDB Line Protocol. There are a few minor advantages in using Line
Protocol from Telegraf's persepective involving performance and the
elimination of any confusion transforming metrics, but they probably don't
outweigh the need to support yet another format on your end. Telegraf aims to
be unopinionated so that it can support heterogeneous environments.
--
Daniel

Loading...