Telegraf output plugins

Telegraf allows users to specify multiple output sinks in the configuration file.

Note: Telegraf plugins added in the current release are noted with -- NEW in v1.8. The Release notes and changelog has a list of new plugins and updates for other plugins. See the plugin README files for more details.

Supported Telegraf output plugins

Amazon CloudWatch (cloudwatch)

The Amazon CloudWatch (cloudwatch) output plugin send metrics to Amazon CloudWatch.

Amazon Kinesis (kinesis)

The Amazon Kinesis (kinesis) output plugin is an experimental plugin that is still in the early stages of development. It will batch up all of the Points in one Put request to Kinesis. This should save the number of API requests by a considerable level.

Amon (amon)

The Amon (amon) output plugin writes metrics to an Amon server. For details on the Amon Agent, see Monitoring Agent and requires a apikey and amoninstance URL.

If the point value being sent cannot be converted to a float64 value, the metric is skipped.

Metrics are grouped by converting any _ characters to . in the Point Name.

AMQP (amqp)

The AMQP (amqp) output plugin writes to a AMQP 0-9-1 Exchange, a prominent implementation of this protocol being RabbitMQ.

Metrics are written to a topic exchange using tag, defined in configuration file as RoutingTag, as a routing key.

Apache Kafka (kafka)

The Apache Kafka (kafka) output plugin writes to a Kafka Broker acting a Kafka Producer.

CrateDB (cratedb)

The CrateDB (cratedb) output plugin writes to CrateDB using its PostgreSQL protocol.

Datadog (datadog)

The Datadog (datadog) output plugin writes to the Datadog Metrics API and requires an apikey which can be obtained here for the account.

Discard (discard)

The Discard (discard) output plugin simply drops all metrics that are sent to it. It is only meant to be used for testing purposes.

Elasticsearch (elasticsearch)

The Elasticsearch (elasticsearch) output plugin writes to Elasticsearch via HTTP using Elastic. Currently it only supports Elasticsearch 5.x series.

File (file)

The File (file) output plugin writes Telegraf metrics to files.

Graphite (graphite)

The Graphite (graphite) output plugin writes to Graphite via raw TCP.

Graylog (graylog)

The Graylog (graylog) output plugin writes to a Graylog instance using the gelf format.

HTTP (http)

The HTTP (http) output plugin sends metrics in a HTTP message encoded using one of the output data formats. For data_formats that support batching, metrics are sent in batch format.

InfluxDB v1.x (influxdb)

The InfluxDB v1.x (influxdb) output plugin writes to InfluxDB using HTTP or UDP.

InfluxDB v2 (influxdb_v2)– NEW in v.1.8

The InfluxDB v2 (influxdb_v2) output plugin writes metrics to the InfluxDB 2.0 HTTP service.

Instrumental (instrumental)

The Instrumental (instrumental) output plugin writes to the Instrumental Collector API and requires a Project-specific API token.

Instrumental accepts stats in a format very close to Graphite, with the only difference being that the type of stat (gauge, increment) is the first token, separated from the metric itself by whitespace. The increment type is only used if the metric comes in as a counter through [[input.statsd]].

Librato (librato)

The Librato (librato) output plugin writes to the Librato Metrics API and requires an api_user and api_token which can be obtained here for the account.

Microsoft Azure Application Insights (application_insights)

The Microsoft Azure Application Insights (application_insights) output plugin writes Telegraf metrics to Application Insights (Microsoft Azure).

Microsoft Azure Monitor (azure_monitor) – NEW in v.1.8

Note: The Azure Monitor custom metrics service is currently in preview and not available in a subset of Azure regions.

The Microsoft Azure Monitor (azure_monitor) output plugin sends custom metrics to Microsoft Azure Monitor. Azure Monitor has a metric resolution of one minute. To handle this in Telegraf, the Azure Monitor output plugin automatically aggregates metrics into one minute buckets, which are then sent to Azure Monitor on every flush interval.

For a Microsoft blog posting on using Telegraf with Microsoft Azure Monitor, see Collect custom metrics for a Linux VM with the InfluxData Telegraf Agent.

The metrics from each input plugin will be written to a separate Azure Monitor namespace, prefixed with Telegraf/ by default. The field name for each metric is written as the Azure Monitor metric name. All field values are written as a summarized set that includes min, max, sum, and count. Tags are written as a dimension on each Azure Monitor metric.

MQTT Producer (mqtt)

The MQTT Producer (mqtt) output plugin writes to the MQTT server using supported output data formats.

NATS Output (nats)

The NATS Output (nats) output plugin writes to a (list of) specified NATS instance(s).

NSQ (nsq)

The NSQ (nsq) output plugin writes to a specified NSQD instance, usually local to the producer. It requires a server name and a topic name.

OpenTSDB (opentsdb)

The OpenTSDB (opentsdb) output plugin writes to an OpenTSDB instance using either the telnet or HTTP mode.

Using the HTTP API is the recommended way of writing metrics since OpenTSDB 2.0 To use HTTP mode, set useHttp to true in config. You can also control how many metrics are sent in each HTTP request by setting batchSize in config. See for details.

Prometheus Client (prometheus_client)

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

Riemann (riemann)

The Riemann (riemann) output plugin writes to Riemann using TCP or UDP.

Socket Writer (socket_writer)

The Socket Writer (socket_writer) output plugin writes to a UDP, TCP, or UNIX socket. It can output data in any of the supported output formats.

Wavefront (wavefront)

The Wavefront (wavefront) output plugin writes to a Wavefront proxy, in Wavefront data format over TCP.

Deprecated Telegraf output plugins

Riemann Legacy (riemann_legacy)

The Riemann Legacy (riemann_legacy) output plugin will be deprecated in a future release, see for more details & discussion.

This documentation is open source. See a typo? Please, open an issue.

Need help getting up and running? Get Support