---
title: Plugin directory
description: Telegraf is a plugin-driven agent that collects, processes, aggregates, and writes metrics. It supports four categories of plugins including input, output, aggregator, and processor. View and search all available Telegraf plugins.
url: https://docs.influxdata.com/telegraf/v1/plugins/
estimated_tokens: 66530
product: Telegraf
version: v1
---

# Plugin directory

Telegraf is a plugin-driven agent that collects, processes, aggregates, and writes metrics. It supports four categories of plugins: input, output, aggregator, and processor. In addition to the included plugins, you can run *external plugins* that integrate with the Telegraf Execd processor plugin.

##### Plugin type

-    Input
-    Output
-    Aggregator
-    Processor

##### Plugin category

-    Annotation
-    Applications
-    Cloud
-    Containers
-    Datastore
-    Filtering
-    General Purpose
-    Grouping
-    Hardware
-    IoT
-    Logging
-    Math
-    Messaging
-    Network
-    Sampling
-    Server
-    Statistics
-    System
-    Testing
-    Transformation
-    Web

##### Operating system

-    FreeBSD
-    Linux
-    macOS
-    Solaris
-    Windows

##### Status

-    New
-    Deprecated

**Jump to:**

-   [Input plugins](#input-plugins)
-   [Output plugins](#output-plugins)
-   [Aggregator plugins](#aggregator-plugins)
-   [Processor plugins](#processor-plugins)

## Input plugins

Telegraf input plugins are used with the InfluxData time series platform to collect metrics from the system, services, or third-party APIs.

### ActiveMQ

Plugin ID: `inputs.activemq`  
Telegraf v1.8.0+

This plugin gathers queue, topics and subscribers metrics using the Console API [ActiveMQ](https://activemq.apache.org/) message broker daemon.

[View](/telegraf/v1/input-plugins/activemq/)

### Aerospike

Plugin ID: `inputs.aerospike`  
Telegraf v0.2.0 - v1.30.0 Deprecated

This plugin queries [Aerospike](https://www.aerospike.com) server(s) for node statistics and statistics on all configured namespaces.

As of version 1.30 the Aerospike plugin has been deprecated in favor of the prometheus plugin and the officially supported [Aerospike Prometheus Exporter](https://aerospike.com/docs/monitorstack/configure/configure-exporter)

For details on the measurements mean, please consult the [Aerospike Metrics Reference Docs](https://www.aerospike.com/docs/reference/metrics).

Metric names will have dashes (`-`) replaced as underscores (`_`) to make querying more consistently and easy.

All metrics are attempted to be cast to integers, then booleans, then strings in order.

[View](/telegraf/v1/input-plugins/aerospike/)

### Alibaba Cloud Monitor Service (Aliyun)

Plugin ID: `inputs.aliyuncms`  
Telegraf v1.19.0+

This plugin gathers statistics from the [Alibaba / Aliyun cloud monitoring service](https://www.alibabacloud.com). In the following we will use `Aliyun` instead of `Alibaba` as it’s the default naming across the web console and docs.

[View](/telegraf/v1/input-plugins/aliyuncms/)

### AMD ROCm System Management Interface (SMI)

Plugin ID: `inputs.amd_rocm_smi`  
Telegraf v1.20.0+

This plugin gathers statistics including memory and GPU usage, temperatures etc from [AMD ROCm platform](https://rocm.docs.amd.com/) GPUs.

The [`rocm-smi` binary](https://github.com/RadeonOpenCompute/rocm_smi_lib/tree/master/python_smi_tools) is required and needs to be installed on the system.

[View](/telegraf/v1/input-plugins/amd_rocm_smi/)

### AMQP Consumer

Plugin ID: `inputs.amqp_consumer`  
Telegraf v1.3.0+

This plugin consumes messages from an Advanced Message Queuing Protocol v0.9.1 broker. A prominent implementation of this protocol is [RabbitMQ](https://www.rabbitmq.com).

Metrics are read from a topic exchange using the configured queue and binding key. The message payloads must be formatted in one of the supported [data formats](/telegraf/v1/data_formats/input).

For an introduction check the [AMQP concepts page](https://www.rabbitmq.com/tutorials/amqp-concepts.html) and the [RabbitMQ getting started guide](https://www.rabbitmq.com/getstarted.html).

[View](/telegraf/v1/input-plugins/amqp_consumer/)

### Apache

Plugin ID: `inputs.apache`  
Telegraf v1.8.0+

This plugin collects performance information from [Apache HTTP Servers](https://httpd.apache.org) using the [`mod_status` module](https://httpd.apache.org/docs/current/mod/mod_status.html). Typically, this module is configured to expose a page at the `/server-status?auto` endpoint the server.

The [ExtendedStatus option](https://httpd.apache.org/docs/current/mod/core.html#extendedstatus) must be enabled in order to collect all available fields. For information about configuration of your server check the [module documentation](https://httpd.apache.org/docs/current/mod/mod_status.html).

[View](/telegraf/v1/input-plugins/apache/)

### APC UPSD

Plugin ID: `inputs.apcupsd`  
Telegraf v1.12.0+

This plugin gathers data from one or more [apcupsd daemon](https://sourceforge.net/projects/apcupsd/) over the NIS network protocol. To query a server, the daemon must be running and be accessible.

[View](/telegraf/v1/input-plugins/apcupsd/)

### Apache Aurora

Plugin ID: `inputs.aurora`  
Telegraf v1.7.0+

This plugin gathers metrics from [Apache Aurora](https://aurora.apache.org) schedulers. For monitoring recommendations check the [Monitoring your Aurora cluster](https://aurora.apache.org/documentation/latest/operations/monitoring) article.

[View](/telegraf/v1/input-plugins/aurora/)

### Azure Monitor

Plugin ID: `inputs.azure_monitor`  
Telegraf v1.25.0+

This plugin gathers metrics of Azure resources using the [Azure Monitor](https://docs.microsoft.com/en-us/azure/azure-monitor) API. The plugin requires a `client_id`, `client_secret` and `tenant_id` for authentication via access token. The `subscription_id` is required for accessing Azure resources.

Check the [supported metrics page](https://docs.microsoft.com/en-us/azure/azure-monitor/essentials/metrics-supported) for available resource types and their metrics.

The Azure API has a read limit of 12,000 requests per hour. Please make sure you don’t exceed this limit with the total number of metrics you are in the configured interval.

[View](/telegraf/v1/input-plugins/azure_monitor/)

### Azure Queue Storage

Plugin ID: `inputs.azure_storage_queue`  
Telegraf v1.13.0+

This plugin gathers queue sizes from the [Azure Queue Storage](https://learn.microsoft.com/en-us/azure/storage/queues) service, storing a large numbers of messages.

[View](/telegraf/v1/input-plugins/azure_storage_queue/)

### Bcache

Plugin ID: `inputs.bcache`  
Telegraf v0.2.0+

This plugin gathers statistics for the [block layer cache](https://docs.kernel.org/admin-guide/bcache.html) from the `stats_total` directory and `dirty_data` file.

[View](/telegraf/v1/input-plugins/bcache/)

### Beanstalkd

Plugin ID: `inputs.beanstalkd`  
Telegraf v1.8.0+

This plugin collects server statistics as well as tube statistics from a [Beanstalkd work queue](https://beanstalkd.github.io/) as reported by the `stats` and `stats-tube` server commands.

[View](/telegraf/v1/input-plugins/beanstalkd/)

### Beat

Plugin ID: `inputs.beat`  
Telegraf v1.18.0+

This plugin will collect metrics from a [Beats](https://www.elastic.co/beats) instances. It is known to work with Filebeat and Kafkabeat.

[View](/telegraf/v1/input-plugins/beat/)

### BIND 9 Nameserver

Plugin ID: `inputs.bind`  
Telegraf v1.11.0+

This plugin collects metrics from [BIND 9 nameservers](https://www.isc.org/bind) using the XML or JSON endpoint.

For *XML*, version 2 statistics (BIND 9.6 to 9.9) and version 3 statistics (BIND 9.9+) are supported. Version 3 statistics are the default and only XML format in BIND 9.10+.

For BIND 9.9 to support version 3 statistics, it must be built with the `--enable-newstats` compile flag, and the statistics must be specifically requested via the correct URL.

For *JSON*, version 1 statistics (BIND 9.10+) are supported. As of writing, some distros still do not enable support for JSON statistics in their BIND packages.

[View](/telegraf/v1/input-plugins/bind/)

### Bond

Plugin ID: `inputs.bond`  
Telegraf v1.5.0+

This plugin collects metrics for both the network bond interface as well as its slave interfaces using `/proc/net/bonding/*` files.

[View](/telegraf/v1/input-plugins/bond/)

### Burrow

Plugin ID: `inputs.burrow`  
Telegraf v1.7.0+

This plugin collect Kafka topic, consumer and partition status from the [Burrow - Kafka Consumer Lag Checking](https://github.com/linkedin/Burrow) companion via [HTTP API](https://github.com/linkedin/Burrow/wiki/HTTP-Endpoint). Burrow v1.x versions are supported.

[View](/telegraf/v1/input-plugins/burrow/)

### Ceph Storage

Plugin ID: `inputs.ceph`  
Telegraf v0.13.1+

This plugin collects performance metrics from MON and OSD nodes in a [Ceph storage cluster](https://ceph.com). Support for Telegraf has been introduced in the v13.x Mimic release where data is sent to a socket (see [their documnetation](https://docs.ceph.com/en/latest/mgr/telegraf)).

[View](/telegraf/v1/input-plugins/ceph/)

### Control Group

Plugin ID: `inputs.cgroup`  
Telegraf v1.0.0+

This plugin gathers statistics per [control group (cgroup)](https://docs.kernel.org/admin-guide/cgroup-v2.html).

Consider restricting paths to the set of cgroups you are interested in if you have a large number of cgroups, to avoid cardinality issues.

The plugin supports the *single value format* in the form

the *new line separated values format* in the form

the *space separated values format* in the form

and the *space separated keys and value, separated by new line format* in the form

[View](/telegraf/v1/input-plugins/cgroup/)

### chrony

Plugin ID: `inputs.chrony`  
Telegraf v0.13.1+

This plugin queries metrics from a [chrony NTP server](https://chrony-project.org). For details on the meaning of the gathered fields please check the [chronyc manual](https://chrony-project.org/doc/4.4/chronyc.html).

[View](/telegraf/v1/input-plugins/chrony/)

### Cisco Model-Driven Telemetry (MDT)

Plugin ID: `inputs.cisco_telemetry_mdt`  
Telegraf v1.11.0+

This plugin consumes [Cisco model-driven telemetry (MDT)](https://www.cisco.com/c/en/us/products/collateral/switches/catalyst-9300-series-switches/model-driven-telemetry-wp.html) data from Cisco IOS XR, IOS XE and NX-OS platforms via TCP or GRPC. GRPC-based transport can utilize TLS for authentication and encryption. Telemetry data is expected to be GPB-KV (self-describing-gpb) encoded.

The GRPC dialout transport is supported on various IOS XR (64-bit) 6.1.x and later, IOS XE 16.10 and later, as well as NX-OS 7.x and later platforms. The TCP dialout transport is supported on IOS XR (32-bit and 64-bit) 6.1.x and later.

[View](/telegraf/v1/input-plugins/cisco_telemetry_mdt/)

### ClickHouse

Plugin ID: `inputs.clickhouse`  
Telegraf v1.14.0+

This plugin gathers statistics data from a [ClickHouse server](https://github.com/ClickHouse/ClickHouse). Users on Clickhouse Cloud will not see the Zookeeper metrics as they may not have permissions to query those tables.

[View](/telegraf/v1/input-plugins/clickhouse/)

### Google Cloud PubSub

Plugin ID: `inputs.cloud_pubsub`  
Telegraf v1.10.0+

This plugin consumes messages from the [Google Cloud PubSub](https://cloud.google.com/pubsub) service and creates metrics using one of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/cloud_pubsub/)

### Google Cloud PubSub Push

Plugin ID: `inputs.cloud_pubsub_push`  
Telegraf v1.10.0+

This plugin listens for messages sent via an HTTP POST from [Google Cloud PubSub](https://cloud.google.com/pubsub) and expects messages in Google’s Pub/Sub *JSON format*. The plugin allows Telegraf to serve as an endpoint of push service.

Google’s PubSub service will **only** send over HTTPS/TLS so this plugin must be behind a valid proxy or must be configured to use TLS by setting the `tls_cert` and `tls_key` accordingly.

Enable mutually authenticated TLS and authorize client connections by signing certificate authority by including a list of allowed CA certificate file names in `tls_allowed_cacerts`.

[View](/telegraf/v1/input-plugins/cloud_pubsub_push/)

### Amazon CloudWatch Statistics

Plugin ID: `inputs.cloudwatch`  
Telegraf v0.12.1+

This plugin will gather metric statistics from [Amazon CloudWatch](https://aws.amazon.com/cloudwatch).

[View](/telegraf/v1/input-plugins/cloudwatch/)

### Amazon CloudWatch Metric Streams

Plugin ID: `inputs.cloudwatch_metric_streams`  
Telegraf v1.24.0+

This plugin listens for metrics sent via HTTP by [Cloudwatch metric streams](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Metric-Streams.html) implementing the required [response specifications](https://docs.aws.amazon.com/firehose/latest/dev/httpdeliveryrequestresponse.html).

Using this plugin can incure costs, see the *Metric Streams example* in [CloudWatch pricing](https://aws.amazon.com/cloudwatch/pricing).

[View](/telegraf/v1/input-plugins/cloudwatch_metric_streams/)

### Netfilter Conntrack

Plugin ID: `inputs.conntrack`  
Telegraf v1.0.0+

This plugin collects metrics from [Netfilter’s conntrack tools](https://conntrack-tools.netfilter.org/). There are two collection mechanisms for this plugin:

1. Extracting information from `/proc/net/stat/nf_conntrack` files if the `collect` option is set accordingly for finding CPU specific values.
2. Using specific files and directories by specifying the `dirs` option. At runtime, conntrack exposes many of those connection statistics within `/proc/sys/net`. Depending on your kernel version, these files can be found in either `/proc/sys/net/ipv4/netfilter` or `/proc/sys/net/netfilter` and will be prefixed with either `ip` or `nf`.

In order to simplify configuration in a heterogeneous environment, a superset of directory and filenames can be specified. Any locations that doesn’t exist is ignored.

[View](/telegraf/v1/input-plugins/conntrack/)

### Hashicorp Consul

Plugin ID: `inputs.consul`  
Telegraf v1.0.0+

This plugin will collect statistics about all health checks registered in [Consul](https://www.consul.io) using the [Consul API](https://www.consul.io/docs/agent/http/health.html#health_state). The plugin will not report any [telemetry metrics](https://www.consul.io/docs/agent/telemetry.html) but Consul can report those statistics using the StatsD protocol if needed.

[View](/telegraf/v1/input-plugins/consul/)

### Hashicorp Consul Agent

Plugin ID: `inputs.consul_agent`  
Telegraf v1.22.0+

This plugin collects metrics from a [Consul agent](https://developer.hashicorp.com/consul/commands/agent). Telegraf may be present in every node and connect to the agent locally. Tested on Consul v1.10.

[View](/telegraf/v1/input-plugins/consul_agent/)

### Couchbase

Plugin ID: `inputs.couchbase`  
Telegraf v0.12.0+

This plugin collects metrics from [Couchbase](https://www.couchbase.com/), a distributed NoSQL database. Metrics are collected for each node, as well as detailed metrics for each bucket, for a given couchbase server.

[View](/telegraf/v1/input-plugins/couchbase/)

### Apache CouchDB

Plugin ID: `inputs.couchdb`  
Telegraf v0.10.3+

This plugin gathers metrics from [Apache CouchDB](https://couchdb.apache.org/) instances using the [stats](http://docs.couchdb.org/en/1.6.1/api/server/common.html?highlight=stats#get--_stats) endpoint.

[View](/telegraf/v1/input-plugins/couchdb/)

### CPU

Plugin ID: `inputs.cpu`  
Telegraf v0.1.5+

This plugin gathers metrics about the system’s CPUs.

[View](/telegraf/v1/input-plugins/cpu/)

### Counter-Strike Global Offensive (CSGO)

Plugin ID: `inputs.csgo`  
Telegraf v1.18.0+

This plugin gather metrics from [Counter-Strike: Global Offensive](https://www.counter-strike.net/) servers.

[View](/telegraf/v1/input-plugins/csgo/)

### Bosch Rexroth ctrlX Data Layer

Plugin ID: `inputs.ctrlx_datalayer`  
Telegraf v1.27.0+

This plugin gathers data from the [ctrlX Data Layer](https://ctrlx-automation.com) a communication middleware running on Bosch Rexroth’s [ctrlX CORE devices](https://ctrlx-core.com). The platform is used for professional automation applications like industrial automation, building automation, robotics, IoT Gateways or as classical PLC.

[View](/telegraf/v1/input-plugins/ctrlx_datalayer/)

### Mesosphere Distributed Cloud OS

Plugin ID: `inputs.dcos`  
Telegraf v1.5.0+

This input plugin gathers metrics from a [Distributed Cloud OS](https://dcos.io/) cluster’s [metrics component](https://docs.mesosphere.com/1.10/metrics/).

Depending on the workload of your DC/OS cluster, this plugin can quickly create a high number of series which, when unchecked, can cause high load on your database!

[View](/telegraf/v1/input-plugins/dcos/)

### Directory Monitor

Plugin ID: `inputs.directory_monitor`  
Telegraf v1.18.0+

This plugin monitors a single directory (traversing sub-directories), and processes each file placed in the directory. The plugin will gather all files in the directory at the configured interval, and parse the ones that haven’t been picked up yet.

Files should not be used by another process or the plugin may fail. Furthermore, files should not be written *live* to the monitored directory. If you absolutely must write files directly, they must be guaranteed to finish writing before `directory_duration_threshold`.

[View](/telegraf/v1/input-plugins/directory_monitor/)

### Disk

Plugin ID: `inputs.disk`  
Telegraf v0.1.1+

This plugin gathers metrics about disk usage.

The `used_percent` field is calculated by `used / (used + free)` and *not* `used / total` as the unix `df` command does it. See [wikipedia - df](https://en.wikipedia.org/wiki/Df_\(Unix\)) for more details.

[View](/telegraf/v1/input-plugins/disk/)

### DiskIO

Plugin ID: `inputs.diskio`  
Telegraf v0.10.0+

This plugin gathers metrics about disk traffic and timing.

[View](/telegraf/v1/input-plugins/diskio/)

### Disque

Plugin ID: `inputs.disque`  
Telegraf v0.10.0+

This plugin gathers data from a [Disque](https://github.com/antirez/disque) instance, an experimental distributed, in-memory, message broker.

[View](/telegraf/v1/input-plugins/disque/)

### Device Mapper Cache

Plugin ID: `inputs.dmcache`  
Telegraf v1.3.0+

This plugin provide a native collection for dmsetup based statistics for [dm-cache](https://docs.kernel.org/admin-guide/device-mapper/cache.html).

This plugin requires super-user permissions! Please make sure, Telegraf is able to run `sudo /sbin/dmsetup status --target cache` without requiring a password.

[View](/telegraf/v1/input-plugins/dmcache/)

### DNS Query

Plugin ID: `inputs.dns_query`  
Telegraf v1.4.0+

This plugin gathers information about DNS queries such as response time and result codes.

[View](/telegraf/v1/input-plugins/dns_query/)

### Docker

Plugin ID: `inputs.docker`  
Telegraf v0.1.9+

This plugin uses the [Docker Engine API](https://docs.docker.com/engine/api) to gather metrics on running Docker containers.

Make sure Telegraf has sufficient permissions to access the configured endpoint.

[View](/telegraf/v1/input-plugins/docker/)

### Docker Log

Plugin ID: `inputs.docker_log`  
Telegraf v1.12.0+

This plugin uses the [Docker Engine API](https://docs.docker.com/engine/api) to gather logs from running Docker containers.

This plugin works only for containers with the `local` or `json-file` or `journald` logging driver. Make sure Telegraf has sufficient permissions to access the configured endpoint.

[View](/telegraf/v1/input-plugins/docker_log/)

### Dovecot

Plugin ID: `inputs.dovecot`  
Telegraf v0.10.3+

This plugin uses the Dovecot [v2.1 stats protocol](https://doc.dovecot.org/configuration_manual/stats/old_statistics/#old-statistics) to gather metrics about configured domains of [Dovecot](https://www.dovecot.org/) servers. You can use this plugin on Dovecot up to and including version v2.3.x.

Dovecot v2.4+ has the old protocol removed and this plugin will not work. Please use Dovecot’s [Openmetrics exporter](https://doc.dovecot.org/latest/core/config/statistics.html#openmetrics) in combination with the [http input plugin](/telegraf/v1/plugins/#input-http) and `openmetrics` data format for newer versions of Dovecot.

[View](/telegraf/v1/input-plugins/dovecot/)

### Data Plane Development Kit (DPDK)

Plugin ID: `inputs.dpdk`  
Telegraf v1.19.0+

This plugin collects metrics exposed by applications built with the [Data Plane Development Kit](https://www.dpdk.org) which is an extensive set of open source libraries designed for accelerating packet processing workloads.

Since DPDK will most likely run with root privileges, the telemetry socket exposed by DPDK will also require root access. Please adjust permissions accordingly!

Refer to the [Telemetry User Guide](https://doc.dpdk.org/guides/howto/telemetry.html) for details and examples on how to use DPDK in your application.

This plugin uses the `v2` interface to read telemetry > data from applications and required DPDK version `v20.05` or higher. Some metrics might require later versions. The recommended version, especially in conjunction with the `in_memory` option is `DPDK 21.11.2` or higher.

[View](/telegraf/v1/input-plugins/dpdk/)

### Amazon Elastic Container Service

Plugin ID: `inputs.ecs`  
Telegraf v1.11.0+

This plugin gathers statistics on running containers in a Task from the [Amazon Elastic Container Service](https://aws.amazon.com/ecs/) using the [Amazon ECS metadata](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint.html) and the [v2](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint-v2.html) or [v3](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint-v3.html) statistics API endpoints.

The telegraf container must be run in the same Task as the workload it is inspecting.

The amazon-ecs-agent (though it *is* a container running on the host) is not present in the metadata/stats endpoints.

[View](/telegraf/v1/input-plugins/ecs/)

### Elasticsearch

Plugin ID: `inputs.elasticsearch`  
Telegraf v0.1.5+

This plugin queries endpoints of a [Elasticsearch](https://www.elastic.co/) instance to obtain [node statistics](https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-nodes-stats.html) and optionally [cluster-health](https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-health.html) metrics. Additionally, the plugin is able to query [cluster](https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-stats.html), [indices and shard](https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-stats.html) statistics for the master node.

Specific statistics information can change between Elasticsearch versions. In general, this plugin attempts to stay as version-generic as possible by tagging high-level categories only and creating unique field names of whatever statistics names are provided at the mid-low level.

[View](/telegraf/v1/input-plugins/elasticsearch/)

### Elasticsearch Query

Plugin ID: `inputs.elasticsearch_query`  
Telegraf v1.20.0+

This plugin allows to query an [Elasticsearch](https://www.elastic.co/) instance to obtain metrics from data stored in the cluster. The plugins supports counting the number of hits for a search query, calculating statistics for numeric fields, filtered by a query, aggregated per tag and to count the number of terms for a particular field.

This plugins supports Elasticsearch 5.x and 6.x but is known to break on 7.x or higher.

[View](/telegraf/v1/input-plugins/elasticsearch_query/)

### Ethtool

Plugin ID: `inputs.ethtool`  
Telegraf v1.13.0+

This plugin collects ethernet device statistics. The available information strongly depends on the network device and driver.

[View](/telegraf/v1/input-plugins/ethtool/)

### Azure Event Hub Consumer

Plugin ID: `inputs.eventhub_consumer`  
Telegraf v1.14.0+

This plugin allows consuming messages from [Azure Event Hubs](https://learn.microsoft.com/en-us/azure/event-hubs/event-hubs-about) and [Azure IoT Hub](https://azure.microsoft.com/en-us/products/iot-hub) instances.

[View](/telegraf/v1/input-plugins/eventhub_consumer/)

### Exec

Plugin ID: `inputs.exec`  
Telegraf v0.1.5+

This plugin executes the given `commands` on every interval and parses metrics from their output in any one of the supported [data formats](/telegraf/v1/data_formats/input). This plugin can be used to poll for custom metrics from any source.

[View](/telegraf/v1/input-plugins/exec/)

### Execd

Plugin ID: `inputs.execd`  
Telegraf v1.14.0+

This plugin runs the given external program as a long-running daemon and collects the metrics in one of the supported [data formats](/telegraf/v1/data_formats/input) on the process’s `stdout`. The program is expected to stay running and output data when receiving the configured `signal`.

The `stderr` output of the process will be relayed to Telegraf’s logging facilities and will be logged as *error* by default. However, you can log to other levels by prefixing your message with `E!` for error, `W!` for warning, `I!` for info, `D!` for debugging and `T!` for trace levels followed by a space and the actual message. For example outputting `I! A log message` will create a `info` log line in your Telegraf logging output.

[View](/telegraf/v1/input-plugins/execd/)

### Fail2ban

Plugin ID: `inputs.fail2ban`  
Telegraf v1.4.0+

This plugin gathers the count of failed and banned IP addresses using [fail2ban](https://www.fail2ban.org) by running the `fail2ban-client` command.

The `fail2ban-client` requires root access, so please make sure to either allow Telegraf to run that command using `sudo` without a password or by running telegraf as root (not recommended).

[View](/telegraf/v1/input-plugins/fail2ban/)

### Fibaro

Plugin ID: `inputs.fibaro`  
Telegraf v1.7.0+

This plugin gathers data from devices connected to a [Fibaro](https://www.fibaro.com) controller. Those values could be true (1) or false (0) for switches, percentage for dimmers, temperature, etc. Both *Home Center 2* and *Home Center 3* devices are supported.

[View](/telegraf/v1/input-plugins/fibaro/)

### File

Plugin ID: `inputs.file`  
Telegraf v1.8.0+

This plugin reads the **complete** contents of the configured files in **every** interval. The file content is split line-wise and parsed according to one of the supported [data formats](/telegraf/v1/data_formats/input).

If you wish to only process newly appended lines use the [tail](/telegraf/v1/plugins/#input-tail) input plugin instead.

[View](/telegraf/v1/input-plugins/file/)

### Filecount

Plugin ID: `inputs.filecount`  
Telegraf v1.8.0+

This plugin reports the number and total size of files in specified directories.

[View](/telegraf/v1/input-plugins/filecount/)

### File statistics

Plugin ID: `inputs.filestat`  
Telegraf v0.13.0+

This plugin gathers metrics about file existence, size, and other file statistics.

[View](/telegraf/v1/input-plugins/filestat/)

### Fireboard

Plugin ID: `inputs.fireboard`  
Telegraf v1.12.0+

This plugin gathers real-time temperature data from [fireboard](https://www.fireboard.com) thermometers.

You will need to sign up to for the [Fireboard REST API](https://docs.fireboard.io/reference/restapi.html) in order to use this plugin.

[View](/telegraf/v1/input-plugins/fireboard/)

### AWS Data Firehose

Plugin ID: `inputs.firehose`  
Telegraf v1.34.0+

This plugin listens for metrics sent via HTTP from [AWS Data Firehose](https://aws.amazon.com/de/firehose/) in one of the supported [data formats](/telegraf/v1/data_formats/input). The plugin strictly follows the request-response schema as describe in the official [documentation](https://docs.aws.amazon.com/firehose/latest/dev/httpdeliveryrequestresponse.html).

[View](/telegraf/v1/input-plugins/firehose/)

### Fluentd

Plugin ID: `inputs.fluentd`  
Telegraf v1.4.0+

This plugin gathers internal metrics of a [fluentd](https://www.fluentd.org/) instance provided by fluentd’s [monitor agent plugin](https://docs.fluentd.org/input/monitor_agent). Data provided by the `/api/plugin.json` resource, `/api/config.json` is not covered.

This plugin might produce high-cardinality series as the `plugin_id` value is random after each restart of fluentd. You might need to adjust your fluentd configuration, in order to reduce series cardinality in case your fluentd restarts frequently by adding the `@id` parameter to each plugin. See [fluentd’s documentation](https://docs.fluentd.org/configuration/config-file#common-plugin-parameter) for details.

[View](/telegraf/v1/input-plugins/fluentd/)

### Fritzbox

Plugin ID: `inputs.fritzbox`  
Telegraf v1.35.0+

This plugin gathers status information from [AVM](https://en.avm.de/) devices (routers, repeaters, etc) using the device’s [TR-064](https://avm.de/service/schnittstellen/) interface.

[View](/telegraf/v1/input-plugins/fritzbox/)

### GitHub

Plugin ID: `inputs.github`  
Telegraf v1.11.0+

This plugin gathers information from projects and repositories hosted on [GitHub](https://www.github.com).

Telegraf also contains the [webhook input plugin](/telegraf/v1/plugins/#input-webhooks) which can be used as an alternative method for collecting repository information.

[View](/telegraf/v1/input-plugins/github/)

### gNMI (gRPC Network Management Interface)

Plugin ID: `inputs.gnmi`  
Telegraf v1.15.0+

This plugin consumes telemetry data based on [gNMI](https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-specification.md) subscriptions. TLS is supported for authentication and encryption. This plugin is vendor-agnostic and is supported on any platform that supports the gNMI specification.

For Cisco devices the plugin has been optimized to support gNMI telemetry as produced by Cisco IOS XR (64-bit) version 6.5.1, Cisco NX-OS 9.3 and Cisco IOS XE 16.12 and later.

[View](/telegraf/v1/input-plugins/gnmi/)

### Google Cloud Storage

Plugin ID: `inputs.google_cloud_storage`  
Telegraf v1.25.0+

This plugin will collect metrics from the given [Google Cloud Storage](https://cloud.google.com/storage) buckets in any of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/google_cloud_storage/)

### GrayLog

Plugin ID: `inputs.graylog`  
Telegraf v1.0.0+

This plugin collects data from [Graylog servers](https://graylog.org/), currently supporting two type of end points `multiple` (e.g. `http://<host>:9000/api/system/metrics/multiple`) and `namespace` (e.g. `http://<host>:9000/api/system/metrics/namespace/{namespace}`).

Multiple endpoint can be queried and mixing `multiple` and serveral `namespace` end points is possible. Check `http://<host>:9000/api/api-browser` for the full list of available endpoints.

When specifying a `namespace` endpoint without an actual namespace, the metrics array will be ignored.

[View](/telegraf/v1/input-plugins/graylog/)

### HAProxy

Plugin ID: `inputs.haproxy`  
Telegraf v0.1.5+

This plugin gathers statistics of [HAProxy](http://www.haproxy.org/) servers using sockets or the HTTP protocol.

[View](/telegraf/v1/input-plugins/haproxy/)

### HDDtemp

Plugin ID: `inputs.hddtemp`  
Telegraf v1.0.0+

This plugin reads data from a [hddtemp](https://savannah.nongnu.org/projects/hddtemp/) daemon.

This plugin requires `hddtemp` to be installed and running as a daemon.

As the upstream project is not activly maintained anymore and various distributions (e.g. Debian Bookwork and later) don’t ship packages for `hddtemp` anymore, the binary might not be available (e.g. in Ubuntu 22.04 or later).

As an alternative consider using the [smartctl](/telegraf/v1/plugins/#input-smartctl) relying on SMART information or [sensors](/telegraf/v1/plugins/#input-sensors) plugins to retrieve temperature data of your hard-drive.

[View](/telegraf/v1/input-plugins/hddtemp/)

### HTTP

Plugin ID: `inputs.http`  
Telegraf v1.6.0+

This plugin collects metrics from one or more HTTP endpoints providing data in one of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/http/)

### HTTP Listener v2

Plugin ID: `inputs.http_listener_v2`  
Telegraf v1.9.0+

This plugin listens for metrics sent via HTTP in any of the supported [data formats](/telegraf/v1/data_formats/input).

If you would like Telegraf to act as a proxy/relay for InfluxDB v1 or InfluxDB v2 it is recommended to use the [influxdb\_\_listener](/telegraf/v1/plugins/#input-influxdb_listener) or [influxdb\_v2\_listener](/telegraf/v1/plugins/#input-influxdb_v2_listener) plugin instead.

[View](/telegraf/v1/input-plugins/http_listener_v2/)

### HTTP Response

Plugin ID: `inputs.http_response`  
Telegraf v0.12.1+

This plugin generates metrics from HTTP responses including the status code and response statistics.

[View](/telegraf/v1/input-plugins/http_response/)

### HueBridge

Plugin ID: `inputs.huebridge`  
Telegraf v1.34.0+

This plugin gathers status from [Hue Bridge](https://www.philips-hue.com/) devices using the [CLIP API](https://developers.meethue.com/develop/hue-api-v2/) interface of the devices.

[View](/telegraf/v1/input-plugins/huebridge/)

### Hugepages

Plugin ID: `inputs.hugepages`  
Telegraf v1.22.0+

This plugin gathers metrics from the Linux’ [Transparent Huge Pages (THP) memory management system](https://www.kernel.org/doc/html/latest/admin-guide/mm/hugetlbpage.html) that reduces the overhead of Translation Lookaside Buffer (TLB) lookups on machines with large amounts of memory.

[View](/telegraf/v1/input-plugins/hugepages/)

### Icinga2

Plugin ID: `inputs.icinga2`  
Telegraf v1.8.0+

This plugin gather services and hosts status information using the [Icinga2 remote API](https://docs.icinga.com/icinga2/latest/doc/module/icinga2/chapter/icinga2-api).

[View](/telegraf/v1/input-plugins/icinga2/)

### InfiniBand

Plugin ID: `inputs.infiniband`  
Telegraf v1.14.0+

This plugin gathers statistics for all InfiniBand devices and ports on the system. These are the counters that can be found in `/sys/class/infiniband/<dev>/port/<port>/counters/` and RDMA counters can be found in `/sys/class/infiniband/<dev>/ports/<port>/hw_counters/`

[View](/telegraf/v1/input-plugins/infiniband/)

### InfluxDB

Plugin ID: `inputs.influxdb`  
Telegraf v0.2.5+

This plugin collects metrics on the given InfluxDB v1 servers from the `/debug/vars` endpoint. Read the [documentation](https://docs.influxdata.com/platform/monitoring/influxdata-platform/tools/measurements-internal/) for detailed information about `influxdb` metrics.

Additionally, this plugin can gather metrics from endpoints exposing InfluxDB-formatted endpoints.

To gather [InfluxDB v2 metrics](https://docs.influxdata.com/influxdb/latest/reference/internals/metrics/) use the [prometheus plugin](/telegraf/v1/plugins/#input-prometheus) with\[\[inputs.prometheus\]\] urls = \[“http://localhost:8086/metrics”\] metric\_version = 1

[View](/telegraf/v1/input-plugins/influxdb/)

### InfluxDB Listener

Plugin ID: `inputs.influxdb_listener`  
Telegraf v1.9.0+

This plugin listens for requests sent according to the [InfluxDB HTTP v1 API](https://docs.influxdata.com/influxdb/v1.8/guides/write_data/). This allows Telegraf to serve as a proxy/router for the `/write` endpoint of the InfluxDB HTTP API.

This plugin was previously known as `http_listener`. If you wish to send general metrics via HTTP it is recommended to use the [`http_listener_v2`](/telegraf/v1/plugins/#input-http_listener_v2) instead.

The `/write` endpoint supports the `precision` query parameter and can be set to one of `ns`, `u`, `ms`, `s`, `m`, `h`. All other parameters are ignored and defer to the output plugins configuration.

When chaining Telegraf instances using this plugin, `CREATE DATABASE` requests receive a `200 OK` response with message body `{"results":[]}` but they are not relayed. The configuration of the output plugin ultimately submits data to InfluxDB determines the destination database.

[View](/telegraf/v1/input-plugins/influxdb_listener/)

### InfluxDB V2 Listener

Plugin ID: `inputs.influxdb_v2_listener`  
Telegraf v1.16.0+

This plugin listens for requests sent according to the [InfluxDB HTTP v2 API](https://docs.influxdata.com/influxdb/v2/api/). This allows Telegraf to serve as a proxy/router for the `/api/v2/write` endpoint of the InfluxDB HTTP API.

The `/api/v2/write` endpoint supports the `precision` query parameter and can be set to one of `ns`, `us`, `ms`, `s`. All other parameters are ignored and defer to the output plugins configuration.

[View](/telegraf/v1/input-plugins/influxdb_v2_listener/)

### Intel Baseband Accelerator

Plugin ID: `inputs.intel_baseband`  
Telegraf v1.27.0+

This plugin collects metrics from both dedicated and integrated Intel devices providing Wireless Baseband hardware acceleration. These devices play a key role in accelerating 5G and 4G Virtualized Radio Access Networks (vRAN) workloads, increasing the overall compute capacity of commercial, off-the-shelf platforms by integrating e.g.

-   Forward Error Correction (FEC) processing,
-   4G Turbo FEC processing,
-   5G Low Density Parity Check (LDPC)
-   Fast Fourier Transform (FFT) block providing DFT/iDFT processing offload for the 5G Sounding Reference Signal (SRS)

[View](/telegraf/v1/input-plugins/intel_baseband/)

### Intel® Dynamic Load Balancer

Plugin ID: `inputs.intel_dlb`  
Telegraf v1.25.0+

This plugin collects metrics exposed by applications built with the [Data Plane Development Kit](https://www.dpdk.org/), an extensive set of open source libraries designed for accelerating packet processing workloads, plugin is also using bifurcated driver. More specifically it’s targeted for applications using Intel DLB as eventdev devices accessed via bifurcated driver (allowing access from kernel and user-space).

[View](/telegraf/v1/input-plugins/intel_dlb/)

### Intel® Platform Monitoring Technology

Plugin ID: `inputs.intel_pmt`  
Telegraf v1.28.0+

This plugin collects metrics via the Linux kernel driver for Intel® Platform Monitoring Technology (Intel® PMT), an architecture capable of enumerating and accessing hardware monitoring capabilities on supported devices.

[View](/telegraf/v1/input-plugins/intel_pmt/)

### Intel Performance Monitoring Unit

Plugin ID: `inputs.intel_pmu`  
Telegraf v1.21.0+

This plugin gathers Intel Performance Monitoring Unit metrics available via the [Linux Perf](https://perf.wiki.kernel.org/index.php/Main_Page) subsystem.

PMU metrics provide insights into performance and health of IA processors’ internal components, including core and uncore units. With the number of cores increasing and processor topology getting more complex the insight into those metrics is vital to assure the best CPU performance and utilization.

Performance counters are CPU hardware registers that count hardware events such as instructions executed, cache-misses suffered, or branches mispredicted. They form a basis for profiling applications to trace dynamic control flow and identify hotspots.

[View](/telegraf/v1/input-plugins/intel_pmu/)

### Intel PowerStat

Plugin ID: `inputs.intel_powerstat`  
Telegraf v1.17.0+

This plugin gathers power statistics on Intel-based platforms providing insights into power saving and workload migration. Those are beneficial for Monitoring and Analytics systems to take preventive or corrective actions based on platform busyness, CPU temperature, actual CPU utilization and power statistics.

[View](/telegraf/v1/input-plugins/intel_powerstat/)

### Intel RDT

Plugin ID: `inputs.intel_rdt`  
Telegraf v1.16.0+

This plugin collects information provided by monitoring features of the [Intel Resource Director Technology](https://www.intel.com/content/www/us/en/architecture-and-technology/resource-director-technology.html), a hardware framework to monitor and control the utilization of shared resources (e.g. last level cache, memory bandwidth).

Intel’s Resource Director Technology (RDT) framework consists of:

-   Cache Monitoring Technology (CMT)
-   Memory Bandwidth Monitoring (MBM)
-   Cache Allocation Technology (CAT)
-   Code and Data Prioritization (CDP)

As multithreaded and multicore platform architectures emerge, the last level cache and memory bandwidth are key resources to manage for running workloads in single-threaded, multithreaded, or complex virtual machine environments. Intel introduces CMT, MBM, CAT and CDP to manage these workloads across shared resources.

[View](/telegraf/v1/input-plugins/intel_rdt/)

### Telegraf Internal

Plugin ID: `inputs.internal`  
Telegraf v1.2.0+

This plugin collects metrics about the telegraf agent and its plugins.

Some metrics are aggregates across all instances of a plugin type.

[View](/telegraf/v1/input-plugins/internal/)

### Internet Speed Monitor

Plugin ID: `inputs.internet_speed`  
Telegraf v1.20.0+

This plugin collects metrics about the internet speed on the system like download/upload speed, latency etc using the [speedtest.net service](https://www.speedtest.net/).

[View](/telegraf/v1/input-plugins/internet_speed/)

### Interrupts

Plugin ID: `inputs.interrupts`  
Telegraf v1.3.0+

This plugin gathers metrics about IRQs from interrupts (`/proc/interrupts`) and soft-interrupts (`/proc/softirqs`).

[View](/telegraf/v1/input-plugins/interrupts/)

### IPMI Sensor

Plugin ID: `inputs.ipmi_sensor`  
Telegraf v0.12.0+

This plugin gathers metrics from the [Intelligent Platform Management Interface](https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/ipmi-intelligent-platform-mgt-interface-spec-2nd-gen-v2-0-spec-update.pdf) using the [`ipmitool`](https://github.com/ipmitool/ipmitool) command line utility.

The `ipmitool` requires access to the IPMI device. Please check the permission section for possible solutions.

[View](/telegraf/v1/input-plugins/ipmi_sensor/)

### Ipset

Plugin ID: `inputs.ipset`  
Telegraf v1.6.0+

This plugin gathers packets and bytes counters from [Linux IP sets](https://ipset.netfilter.org/) using the `ipset` command line tool.

IP sets created without the “counters” option are ignored.

[View](/telegraf/v1/input-plugins/ipset/)

### Iptables

Plugin ID: `inputs.iptables`  
Telegraf v1.1.0+

This plugin gathers packets and bytes counters for rules within a set of table and chain from the Linux’s iptables firewall.

Rules are identified through associated comment, so you must ensure that the rules you want to monitor do have a **unique** comment using the `--comment` flag when adding them. Rules without comments are ignored.

The rule number cannot be used as identifier as it is not constant and may vary when rules are inserted/deleted at start-up or by automatic tools (interactive firewalls, fail2ban, …).

The `iptables` command requires `CAP_NET_ADMIN` and `CAP_NET_RAW` capabilities. Check the permissions section for ways to grant them.

[View](/telegraf/v1/input-plugins/iptables/)

### IPVS

Plugin ID: `inputs.ipvs`  
Telegraf v1.9.0+

This plugin gathers metrics about the [IPVS virtual and real servers](http://www.linuxvirtualserver.org/software/ipvs.html) using the netlink socket interface of the Linux kernel.

The plugin requires `CAP_NET_ADMIN` and `CAP_NET_RAW` capabilities. Check the permissions section for ways to grant them.

[View](/telegraf/v1/input-plugins/ipvs/)

### Jenkins

Plugin ID: `inputs.jenkins`  
Telegraf v1.9.0+

This plugin gathers information about the nodes and jobs running in a [Jenkins](https://www.jenkins.io/) instance. The plugin uses the Jenkins API and does not require a plugin on the server.

[View](/telegraf/v1/input-plugins/jenkins/)

### Jolokia2 Agent

Plugin ID: `inputs.jolokia2_agent`  
Telegraf v1.5.0+

This plugin reads JMX metrics from one or more [Jolokia agent](https://jolokia.org/agent/jvm.html) REST endpoints.

[View](/telegraf/v1/input-plugins/jolokia2_agent/)

### Jolokia2 Proxy

Plugin ID: `inputs.jolokia2_proxy`  
Telegraf v1.5.0+

This plugin reads JMX metrics from one or more *targets* by interacting with a [Jolokia proxy](https://jolokia.org/features/proxy.html) REST endpoint.

[View](/telegraf/v1/input-plugins/jolokia2_proxy/)

### Juniper Telemetry

Plugin ID: `inputs.jti_openconfig_telemetry`  
Telegraf v1.7.0+

This service plugin reads [OpenConfig](http://openconfig.net/) telemetry data via the [Junos Telemetry Interface (JTI)](https://www.juniper.net/documentation/en_US/junos/topics/concept/junos-telemetry-interface-oveview.html) from configured from listed sensors.

[View](/telegraf/v1/input-plugins/jti_openconfig_telemetry/)

### Apache Kafka Consumer

Plugin ID: `inputs.kafka_consumer`  
Telegraf v0.2.3+

This service plugin consumes messages from [Kafka brokers](https://kafka.apache.org) in one of the supported [data formats](/telegraf/v1/data_formats/input). The plugin uses [consumer groups](http://godoc.org/github.com/wvanbergen/kafka/consumergroup) when talking to the Kafka cluster so multiple instances of Telegraf can consume messages from the same topic in parallel.

[View](/telegraf/v1/input-plugins/kafka_consumer/)

### Kapacitor

Plugin ID: `inputs.kapacitor`  
Telegraf v1.3.0+

This plugin collects metrics from the configured [InfluxData Kapacitor](https://www.influxdata.com/time-series-platform/kapacitor/) instances.

[View](/telegraf/v1/input-plugins/kapacitor/)

### Kernel

Plugin ID: `inputs.kernel`  
Telegraf v0.11.0+

This plugin gathers metrics about the [Linux kernel](https://kernel.org/) including, among others, the [available entropy](https://www.kernel.org/doc/html/latest/admin-guide/sysctl/kernel.html#random), [Kernel Samepage Merging](https://www.kernel.org/doc/html/latest/mm/ksm.html) and [Pressure Stall Information](https://www.kernel.org/doc/html/latest/accounting/psi.html).

[View](/telegraf/v1/input-plugins/kernel/)

### Kernel VM Statistics

Plugin ID: `inputs.kernel_vmstat`  
Telegraf v1.0.0+

This plugin gathers virtual memory statistics of the [Linux kernel](https://kernel.org/) by reading `/proc/vmstat`. For a full list of available fields check the `/proc/vmstat` section of the [proc man page](http://man7.org/linux/man-pages/man5/proc.5.html) and for a detailed description about the fields see the [vmstat man page](https://man7.org/linux/man-pages/man8/vmstat.8.html).

[View](/telegraf/v1/input-plugins/kernel_vmstat/)

### Kibana

Plugin ID: `inputs.kibana`  
Telegraf v1.8.0+

This plugin collects metrics about service status from [Kibana](https://www.elastic.co/kibana) instances via the server’s API.

This plugin requires Kibana version 6.0+.

[View](/telegraf/v1/input-plugins/kibana/)

### Kinesis Consumer

Plugin ID: `inputs.kinesis_consumer`  
Telegraf v1.10.0+

This service input plugin consumes messages from [AWS Kinesis](https://aws.amazon.com/kinesis/) data stream in one of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/kinesis_consumer/)

### KNX

Plugin ID: `inputs.knx_listener`  
Telegraf v1.19.0+

This service plugin listens for messages on the [KNX home-automation bus](https://www.knx.org) by connecting via a KNX-IP interface. Information about supported KNX datapoint-types can be found at the underlying [`knx-go` project](https://github.com/vapourismo/knx-go).

[View](/telegraf/v1/input-plugins/knx_listener/)

### Kubernetes Inventory

Plugin ID: `inputs.kube_inventory`  
Telegraf v1.10.0+

This plugin gathers metrics from [Kubernetes](https://kubernetes.io/) resources.

This plugin requires Kubernetes version 1.11+.

The gathered resources include for example daemon sets, deployments, endpoints, ingress, nodes, persistent volumes and many more.

This plugin produces high cardinality data, which when not controlled for will cause high load on your database. Please make sure to [filter](/telegraf/v1/configuration/#metric-filtering) the produced metrics or configure your database to avoid cardinality issues!

[View](/telegraf/v1/input-plugins/kube_inventory/)

### Kubernetes

Plugin ID: `inputs.kubernetes`  
Telegraf v1.1.0+

This plugin gathers metrics about running pods and containers of a [Kubernetes](https://kubernetes.io/) instance via the Kubelet API.

This plugin has to run as part of a `daemonset` within a Kubernetes installation. Telegraf must run on every node within the cluster.

You should configure this plugin to talk to its locally running kubelet.

This plugin produces high cardinality data, which when not controlled for will cause high load on your database. Please make sure to [filter](/telegraf/v1/configuration/#metric-filtering) the produced metrics or configure your database to avoid cardinality issues!

[View](/telegraf/v1/input-plugins/kubernetes/)

### Arista LANZ Consumer

Plugin ID: `inputs.lanz`  
Telegraf v1.14.0+

This service plugin consumes messages from the [Arista Networks’ Latency Analyzer (LANZ)](https://www.arista.com/en/um-eos/eos-latency-analyzer-lanz) by receiving the datastream on TCP (usually through port 50001) on the switch’s management IP.

You will need to configure LANZ and enable streaming LANZ data, see the [documentation](https://www.arista.com/en/um-eos/eos-section-44-3-configuring-lanz) for more details.

[View](/telegraf/v1/input-plugins/lanz/)

### LDAP

Plugin ID: `inputs.ldap`  
Telegraf v1.29.0+

This plugin gathers metrics from LDAP servers’ monitoring (`cn=Monitor`) backend. Currently this plugin supports [OpenLDAP](https://www.openldap.org/) and [389ds](https://www.port389.org/) servers.

[View](/telegraf/v1/input-plugins/ldap/)

### LeoFS

Plugin ID: `inputs.leofs`  
Telegraf v0.1.5+

This plugin gathers metrics of the [LEO filesystem](https://leo-project.net/leofs/) services *LeoGateway*, *LeoManager*, and *LeoStorage* via SNMP. Check the [LeoFS system monitoring documentation](https://leo-project.net/leofs/docs/admin/system_admin/monitoring/) for details.

[View](/telegraf/v1/input-plugins/leofs/)

### Libvirt

Plugin ID: `inputs.libvirt`  
Telegraf v1.25.0+

This plugin collects statistics about virtualized guests on a system by using the [libvirt](https://libvirt.org/) virtualization API. Metrics are gathered directly from the hypervisor on a host system, so Telegraf doesn’t have to be installed and configured on a guest system.

[View](/telegraf/v1/input-plugins/libvirt/)

### Linux CPU

Plugin ID: `inputs.linux_cpu`  
Telegraf v1.24.0+

This plugin gathers CPU metrics exposed on [Linux](https://kernel.org/) systems.

[View](/telegraf/v1/input-plugins/linux_cpu/)

### Linux Sysctl Filesystem

Plugin ID: `inputs.linux_sysctl_fs`  
Telegraf v1.24.0+

This plugin gathers metrics by reading the [system filesystem](https://www.kernel.org/doc/Documentation/sysctl/fs.txt) files on [Linux](https://kernel.org/) systems.

[View](/telegraf/v1/input-plugins/linux_sysctl_fs/)

### LogQL

Plugin ID: `inputs.logql`  
Telegraf v1.37.0+

This plugin gathers metrics from a [Loki](https://grafana.com/oss/loki/) endpoint using [LogQL queries](https://grafana.com/docs/loki/latest/query/) via the [HTTP API](https://grafana.com/docs/loki/latest/reference/loki-http-api/).

[View](/telegraf/v1/input-plugins/logql/)

### Logstash

Plugin ID: `inputs.logstash`  
Telegraf v1.12.0+

This plugin gathers metrics from a [Logstash](https://www.elastic.co/logstash) endpoint using the [Monitoring API](https://www.elastic.co/guide/en/logstash/current/monitoring-logstash.html).

This plugin supports Logstash 5+.

[View](/telegraf/v1/input-plugins/logstash/)

### Lustre

Plugin ID: `inputs.lustre2`  
Telegraf v0.1.5+

This plugin gathers metrics for the [Lustre® file system](http://lustre.org/) using its entries in the `proc` filesystem. Reference the [Lustre Monitoring and Statistics Guide](http://wiki.lustre.org/Lustre_Monitoring_and_Statistics_Guide) for the reported information.

This plugin doesn’t report *all* information available but only a limited set of items. Check the metrics section.

[View](/telegraf/v1/input-plugins/lustre2/)

### Logical Volume Manager

Plugin ID: `inputs.lvm`  
Telegraf v1.21.0+

This plugin collects information about physical volumes, volume groups and logical volumes from the Logical Volume Management (LVM) of the [Linux kernel](https://www.kernel.org/).

[View](/telegraf/v1/input-plugins/lvm/)

### Mailchimp

Plugin ID: `inputs.mailchimp`  
Telegraf v0.2.4+

This plugin gathers metrics from the [Mailchimp](https://mailchimp.com) service using the [Mailchimp API](https://developer.mailchimp.com/).

[View](/telegraf/v1/input-plugins/mailchimp/)

### MarkLogic

Plugin ID: `inputs.marklogic`  
Telegraf v1.12.0+

This plugin gathers health status metrics from one or more [MarkLogic](https://www.progress.com/marklogic) hosts.

[View](/telegraf/v1/input-plugins/marklogic/)

### MavLink

Plugin ID: `inputs.mavlink`  
Telegraf v1.35.0+

This plugin collects metrics from [MavLink](https://mavlink.io/)\-compatible flight controllers such as [ArduPilot](https://ardupilot.org/) or [PX4](https://px4.io/) to live ingest flight metrics from unmanned systems (drones, planes, boats, etc.) Currently the ArduPilot-specific Mavlink dialect is used, check the [Mavlink documentation](https://mavlink.io/en/messages/ardupilotmega.html) for more details and the various messages available.

This plugin potentially generates a large amount of data. If your output plugin cannot handle the rate of messages, use [Metric filters](/telegraf/v1/configuration/#metric-filtering) to limit the metrics written to outputs, and/or the `filters` configuration parameter to limit which Mavlink messages this plugin parses.

[View](/telegraf/v1/input-plugins/mavlink/)

### Mcrouter

Plugin ID: `inputs.mcrouter`  
Telegraf v1.7.0+

This plugin gathers statistics data from [Mcrouter](https://github.com/facebook/mcrouter) instances, a protocol router, developed and maintained by Facebook, for scaling [memcached](http://memcached.org/) deployments.

[View](/telegraf/v1/input-plugins/mcrouter/)

### MD RAID Statistics

Plugin ID: `inputs.mdstat`  
Telegraf v1.20.0+

This plugin gathers statistics about any [Linux MD RAID arrays](https://docs.kernel.org/admin-guide/md.html) configured on the host by reading `/proc/mdstat`. For a full list of available fields see the `/proc/mdstat` section of the [proc man page](http://man7.org/linux/man-pages/man5/proc.5.html). For details on the fields check the [mdstat wiki](https://raid.wiki.kernel.org/index.php/Mdstat).

[View](/telegraf/v1/input-plugins/mdstat/)

### Memory

Plugin ID: `inputs.mem`  
Telegraf v0.1.5+

This plugin collects metrics about the system memory.

For an explanation of the difference between *used* and *actual\_used* RAM, see [Linux ate my ram](http://www.linuxatemyram.com/).

[View](/telegraf/v1/input-plugins/mem/)

### Memcached

Plugin ID: `inputs.memcached`  
Telegraf v0.1.2+

This plugin gathers statistics data from [Memcached](https://memcached.org/) instances.

[View](/telegraf/v1/input-plugins/memcached/)

### Apache Mesos

Plugin ID: `inputs.mesos`  
Telegraf v0.10.3+

This plugin gathers metrics from [Apache Mesos](https://mesos.apache.org/) instances. For more information, please check the [Mesos Observability Metrics](http://mesos.apache.org/documentation/latest/monitoring/) page.

[View](/telegraf/v1/input-plugins/mesos/)

### Minecraft

Plugin ID: `inputs.minecraft`  
Telegraf v1.4.0+

This plugin collects score metrics from a [Minecraft](https://www.minecraft.net/) server using the RCON protocol.

This plugin supports Minecraft Java Edition versions 1.11 - 1.14. When using a version earlier than 1.13, be aware that the values for some criteria has changed and need to be modified.

[View](/telegraf/v1/input-plugins/minecraft/)

### Mock Data

Plugin ID: `inputs.mock`  
Telegraf v1.22.0+

The plugin generates mock-metrics based on different algorithms like sine-wave functions, random numbers and more with the configured names and tags. Those metrics are usefull during testing (e.g. processors) or if random data is required.

[View](/telegraf/v1/input-plugins/mock/)

### Modbus

Plugin ID: `inputs.modbus`  
Telegraf v1.14.0+

This plugin collects data from [Modbus](https://www.modbus.org/) registers using e.g. Modbus TCP or serial interfaces with Modbus RTU or Modbus ASCII.

[View](/telegraf/v1/input-plugins/modbus/)

### MongoDB

Plugin ID: `inputs.mongodb`  
Telegraf v0.1.5+

This plugin collects metrics about [MongoDB](https://www.mongodb.com) server instances by running database commands.

This plugin supports all versions marked as supported in the [MongoDB Software Lifecycle Schedules](https://www.mongodb.com/support-policy/lifecycles).

[View](/telegraf/v1/input-plugins/mongodb/)

### Monit

Plugin ID: `inputs.monit`  
Telegraf v1.14.0+

This plugin gathers metrics and status information about local processes, remote hosts, files, file systems, directories and network interfaces managed and watched over by [Monit](https://mmonit.com/).

The plugin supports Monit version 5.16+. To use this plugin you have to enable the [HTTPD TCP port](https://mmonit.com/monit/documentation/monit.html#TCP-PORT) in Monit.

[View](/telegraf/v1/input-plugins/monit/)

### MQTT Consumer

Plugin ID: `inputs.mqtt_consumer`  
Telegraf v0.10.3+

This service plugin consumes messages from [MQTT](https://mqtt.org) brokers for the configured topics in one of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/mqtt_consumer/)

### Multifile

Plugin ID: `inputs.multifile`  
Telegraf v1.10.0+

This plugin reads the combined data from multiple files into a single metric, creating one field or tag per file. This is often useful creating custom metrics from the `/sys` or `/proc` filesystems.

To parse metrics from a single file you should use the [file](/telegraf/v1/plugins/#input-file) input plugin instead.

[View](/telegraf/v1/input-plugins/multifile/)

### MySQL

Plugin ID: `inputs.mysql`  
Telegraf v0.1.1+

This plugin gathers statistics from [MySQL](https://www.mysql.com/) server instances.

To gather metrics from the performance schema, it must first be enabled in MySQL. See the performance schema [quick start](https://dev.mysql.com/doc/refman/8.0/en/performance-schema-quick-start.html) for details.

[View](/telegraf/v1/input-plugins/mysql/)

### NATS Server Monitoring

Plugin ID: `inputs.nats`  
Telegraf v1.6.0+

This plugin gathers metrics of a [NATS](http://www.nats.io) server instance using its [monitoring endpoints](https://docs.nats.io/running-a-nats-service/nats_admin/monitoring).

[View](/telegraf/v1/input-plugins/nats/)

### NATS Consumer

Plugin ID: `inputs.nats_consumer`  
Telegraf v0.10.3+

This service plugin consumes messages from [NATS](https://www.nats.io/about/) instances in one of the supported [data formats](/telegraf/v1/data_formats/input). A [Queue Group](https://www.nats.io/documentation/concepts/nats-queueing/) is used when subscribing to subjects so multiple instances of telegraf can consume messages in parallel. The plugin supports authenticating via [username/password](https://docs.nats.io/using-nats/developer/connecting/userpass), a [credentials file](https://docs.nats.io/using-nats/developer/connecting/creds) (NATS 2.0), or an [nkey seed file](https://docs.nats.io/using-nats/developer/connecting/nkey) (NATS 2.0).

[View](/telegraf/v1/input-plugins/nats_consumer/)

### Neoom Beaam

Plugin ID: `inputs.neoom_beaam`  
Telegraf v1.33.0+

This plugin gathers metrics from a [Neoom Beaam gateway](https://neoom.com/en/products/beaam) using the [Beaam API](https://developer.neoom.com/reference/concepts-terms-1) with access token that can be created in the Neoom web interface. Please follow the [developer instructions](https://neoom.com/developers) to create the token.

[View](/telegraf/v1/input-plugins/neoom_beaam/)

### Neptune Apex

Plugin ID: `inputs.neptune_apex`  
Telegraf v1.10.0+

This plugin gathers metrics from [Neptune Apex controller](https://www.neptunesystems.com) instances, allowing aquarium hobbyists to monitor and control their tanks based on various probes.

[View](/telegraf/v1/input-plugins/neptune_apex/)

### Network

Plugin ID: `inputs.net`  
Telegraf v0.1.1+

This plugin gathers metrics about network interface and protocol usage.

[View](/telegraf/v1/input-plugins/net/)

### Network Response

Plugin ID: `inputs.net_response`  
Telegraf v0.10.3+

This plugin tests UDP/TCP connection and produces metrics from the result, the response time and optionally verifies text in the response.

[View](/telegraf/v1/input-plugins/net_response/)

### Netflow

Plugin ID: `inputs.netflow`  
Telegraf v1.25.0+

This service plugin acts as a collector for Netflow v5, Netflow v9 and IPFIX flow information. The Layer 4 protocol numbers are gathered from the [official IANA assignments](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml). The internal field mappings for Netflow v5 fields are defined according to [Cisco’s Netflow v5 documentation](https://www.cisco.com/c/en/us/td/docs/net_mgmt/netflow_collection_engine/3-6/user/guide/format.html#wp1006186), Netflow v9 fields are defined according to [Cisco’s Netflow v9 documentation](https://www.cisco.com/en/US/technologies/tk648/tk362/technologies_white_paper09186a00800a3db9.html) and the [ASA extensions](https://www.cisco.com/c/en/us/td/docs/security/asa/special/netflow/asa_netflow.html). Definitions for IPFIX are according to [IANA assignment document](https://www.iana.org/assignments/ipfix/ipfix.xhtml#ipfix-nat-type).

[View](/telegraf/v1/input-plugins/netflow/)

### Network Connection Statistics

Plugin ID: `inputs.netstat`  
Telegraf v0.2.0+

This plugin collects statistics about TCP connection states and UDP socket counts.

[View](/telegraf/v1/input-plugins/netstat/)

### Network Filesystem

Plugin ID: `inputs.nfsclient`  
Telegraf v1.18.0+

This plugin collects metrics about operations on [Network Filesystem](https://www.ietf.org/rfc/rfc1813.txt?number=1813) mounts. By default, only a limited number of general system-level metrics are collected, including basic read/write counts but more detailed metrics can be enabled.

Many of the metrics, even if tagged with a mount point, are really *per-server*. E.g. if you mount two shares: `nfs01:/vol/foo/bar` and `nfs01:/vol/foo/baz`, there will be two near identical entries in `/proc/self/mountstats`. This is a limitation of the metrics exposed by the kernel, not by this plugin.

[View](/telegraf/v1/input-plugins/nfsclient/)

### Nftables

Plugin ID: `inputs.nftables`  
Telegraf v1.37.0+

This plugin gathers packets and bytes counters for rules within Linux’s [nftables](https://wiki.nftables.org/wiki-nftables/index.php/Main_Page) firewall, as well as set element counts.

[View](/telegraf/v1/input-plugins/nftables/)

### Nginx

Plugin ID: `inputs.nginx`  
Telegraf v0.1.5+

This plugin gathers metrics from the open source [Nginx web server](https://www.nginx.com). Nginx Plus is a commercial version. For more information about differences between Nginx (F/OSS) and Nginx Plus, see the Nginx [documentation](https://www.nginx.com/blog/whats-difference-nginx-foss-nginx-plus/).

[View](/telegraf/v1/input-plugins/nginx/)

### Nginx Plus

Plugin ID: `inputs.nginx_plus`  
Telegraf v1.5.0+

This plugin gathers metrics from the commercial [Nginx Plus web server](https://www.f5.com/products/nginx/nginx-plus) via the [status module](http://nginx.org/en/docs/http/ngx_http_status_module.html).

Using this plugin requires a license.

For more information about differences between Nginx (F/OSS) and Nginx Plus, see the Nginx [documentation](https://www.nginx.com/blog/whats-difference-nginx-foss-nginx-plus/).

[View](/telegraf/v1/input-plugins/nginx_plus/)

### Nginx Plus API

Plugin ID: `inputs.nginx_plus_api`  
Telegraf v1.9.0+

This plugin gathers metrics from the commercial [Nginx Plus web server](https://www.f5.com/products/nginx/nginx-plus) via the [REST API](https://demo.nginx.com/swagger-ui/).

Using this plugin requires a license.

For more information about differences between Nginx (F/OSS) and Nginx Plus, see the Nginx [documentation](https://www.nginx.com/blog/whats-difference-nginx-foss-nginx-plus/).

[View](/telegraf/v1/input-plugins/nginx_plus_api/)

### Nginx Stream Server Traffic

Plugin ID: `inputs.nginx_sts`  
Telegraf v1.15.0+

This plugin gathers metrics from the [Nginx web server](https://www.nginx.com) using the [external stream server traffic status module](https://github.com/vozlt/nginx-module-sts). This module provides access to stream host status information containing the current status of servers, upstreams and caches, similar to the live activity monitoring of Nginx plus. For module configuration details please see the [module documentation](https://github.com/vozlt/nginx-module-sts#synopsis).

[View](/telegraf/v1/input-plugins/nginx_sts/)

### Nginx Upstream Check

Plugin ID: `inputs.nginx_upstream_check`  
Telegraf v1.10.0+

This plugin gathers metrics from the [Nginx web server](https://www.nginx.com) using the [upstream check module](https://github.com/yaoweibin/nginx_upstream_check_module). This module periodically sends the configured requests to servers in the Nginx’s upstream determining their availability.

[View](/telegraf/v1/input-plugins/nginx_upstream_check/)

### Nginx Virtual Host Traffic

Plugin ID: `inputs.nginx_vts`  
Telegraf v1.9.0+

This plugin gathers metrics from the [Nginx web server](https://www.nginx.com) using the [external virtual host traffic status module](https://github.com/vozlt/nginx-module-vts). This module provides access to virtual host status information containing the current status of servers, upstreams and caches, similar to the live activity monitoring of Nginx plus. For module configuration details please see the [module documentation](https://github.com/vozlt/nginx-module-vts#synopsis).

[View](/telegraf/v1/input-plugins/nginx_vts/)

### Hashicorp Nomad

Plugin ID: `inputs.nomad`  
Telegraf v1.22.0+

This plugin collects metrics from every [Nomad agent](https://www.nomadproject.io/) of the specified cluster. Telegraf may be present in every node and connect to the agent locally.

[View](/telegraf/v1/input-plugins/nomad/)

### NLnet Labs Name Server Daemon

Plugin ID: `inputs.nsd`  
Telegraf v1.0.0+

This plugin gathers statistics from a [NLnet Labs Name Server Daemon](https://www.nlnetlabs.nl/projects/nsd/about), an authoritative DNS name server.

[View](/telegraf/v1/input-plugins/nsd/)

### Netgear Switch Discovery Protocol

Plugin ID: `inputs.nsdp`  
Telegraf v1.34.0+

This plugin gathers metrics from devices via the [Netgear Switch Discovery Protocol](https://en.wikipedia.org/wiki/Netgear_Switch_Discovery_Protocol) for all available switches and ports.

[View](/telegraf/v1/input-plugins/nsdp/)

### NSQ

Plugin ID: `inputs.nsq`  
Telegraf v1.16.0+

This plugin gathers metrics from [NSQ](https://nsq.io/) realtime distributed messaging platform instances using the [NSQD API](https://nsq.io/components/nsqd.html).

[View](/telegraf/v1/input-plugins/nsq/)

### NSQ Consumer

Plugin ID: `inputs.nsq_consumer`  
Telegraf v0.10.1+

This service plugin consumes messages from [NSQ](https://nsq.io/) realtime distributed messaging platform brokers in one of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/nsq_consumer/)

### Kernel Network Statistics

Plugin ID: `inputs.nstat`  
Telegraf v0.13.1+

This plugin collects network metrics from `/proc/net/netstat`, `/proc/net/snmp` and `/proc/net/snmp6` files

[View](/telegraf/v1/input-plugins/nstat/)

### Network Time Protocol Query

Plugin ID: `inputs.ntpq`  
Telegraf v0.11.0+

This plugin gathers metrics about [Network Time Protocol](https://ntp.org/) queries.

This plugin requires the `ntpq` executable to be installed on the system.

[View](/telegraf/v1/input-plugins/ntpq/)

### Nvidia System Management Interface (SMI)

Plugin ID: `inputs.nvidia_smi`  
Telegraf v1.7.0+

This plugin collects metrics for [NVIDIA GPUs](https://www.nvidia.com/) including memory and GPU usage, temperature and other, using the [NVIDIA System Management Interface](https://developer.nvidia.com/nvidia-system-management-interface).

This plugin requires the `nvidia-smi` binary to be installed on the system.

[View](/telegraf/v1/input-plugins/nvidia_smi/)

### OPC UA Client Reader

Plugin ID: `inputs.opcua`  
Telegraf v1.16.0+

This plugin gathers data from an [OPC UA](https://opcfoundation.org/about/opc-technologies/opc-ua/) server by subscribing to the configured nodes.

[View](/telegraf/v1/input-plugins/opcua/)

### OPC UA Client Listener

Plugin ID: `inputs.opcua_listener`  
Telegraf v1.25.0+

This service plugin receives data from an [OPC UA](https://opcfoundation.org/about/opc-technologies/opc-ua/) server by subscribing to nodes and events.

[View](/telegraf/v1/input-plugins/opcua_listener/)

### OpenLDAP

Plugin ID: `inputs.openldap`  
Telegraf v1.4.0+

This plugin gathers metrics from [OpenLDAP](https://www.openldap.org/)’s `cn=Monitor` backend. To use this plugin you must enable the [slapd monitoring](https://www.openldap.org/devel/admin/monitoringslapd.html) backend.

It is recommended to use the newer [`ldap` input plugin](/telegraf/v1/plugins/#input-ldap) instead.

[View](/telegraf/v1/input-plugins/openldap/)

### OpenNTPD

Plugin ID: `inputs.openntpd`  
Telegraf v1.12.0+

This plugin gathers metrics from [OpenNTPD](http://www.openntpd.org/) using the `ntpctl` command.

The `ntpctl` binary must be present on the system and executable by Telegraf. The plugin supports using `sudo` for execution.

[View](/telegraf/v1/input-plugins/openntpd/)

### OpenSearch Query

Plugin ID: `inputs.opensearch_query`  
Telegraf v1.26.0+

This plugin queries [OpenSearch](https://opensearch.org/) endpoints to derive metrics from data stored in an OpenSearch cluster like the number of hits for a search query, statistics on numeric fields, document counts, etc.

This plugins is tested against OpenSearch 2.5.0 and 1.3.7 but newer version should also work.

[View](/telegraf/v1/input-plugins/opensearch_query/)

### OpenSMTPD

Plugin ID: `inputs.opensmtpd`  
Telegraf v1.5.0+

This plugin gathers statistics from [OpenSMTPD](https://www.opensmtpd.org/) using the `smtpctl` binary.

The `smtpctl` binary must be present on the system and executable by Telegraf. The plugin supports using `sudo` for execution.

[View](/telegraf/v1/input-plugins/opensmtpd/)

### OpenStack

Plugin ID: `inputs.openstack`  
Telegraf v1.21.0+

This plugin collects metrics about services from [OpenStack](https://www.openstack.org/) endpoints.

Due to the large number of unique tags generated by the plugin it is **highly recommended** to use [metric filtering](/telegraf/v1/configuration/#modifiers) like `taginclude` and `tagexclude` to reduce cardinality.

[View](/telegraf/v1/input-plugins/openstack/)

### OpenTelemetry

Plugin ID: `inputs.opentelemetry`  
Telegraf v1.19.0+

This service plugin receives traces, metrics, logs and profiles from [OpenTelemetry](https://opentelemetry.io) clients and compatible agents via gRPC.

Telegraf v1.32 through v1.35 support the Profiles signal using the v1 experimental API. Telegraf v1.36 supports the Profiles signal using the v1 development API before v0.1.0. Telegraf v1.37+ supports the Profiles signal using the v1 development API v0.2.0.

[View](/telegraf/v1/input-plugins/opentelemetry/)

### OpenWeatherMap

Plugin ID: `inputs.openweathermap`  
Telegraf v1.11.0+

This plugin collects weather and forecast data from the [OpenWeatherMap](https://openweathermap.org) service.

To use this plugin you will need an [APP-ID](https://openweathermap.org/appid) to work.

[View](/telegraf/v1/input-plugins/openweathermap/)

### P4 Runtime

Plugin ID: `inputs.p4runtime`  
Telegraf v1.26.0+

This plugin collects metrics from the data plane of network devices, such as Programmable Switches or Programmable Network Interface Cards by reading the `Counter` values of the [P4 program](https://p4.org) running on the device. Metrics are collected through a gRPC connection with the [P4 runtime](https://github.com/p4lang/p4runtime) server.

If you want to gather information about the program name, please follow the instruction in [6.2.1. Annotating P4 code with PkgInfo](https://p4.org/p4-spec/p4runtime/main/P4Runtime-Spec.html#sec-annotating-p4-code-with-pkginfo) to modify your P4 program.

[View](/telegraf/v1/input-plugins/p4runtime/)

### Passenger

Plugin ID: `inputs.passenger`  
Telegraf v0.10.1+

This plugin gathers metrics from the [Phusion Passenger](https://www.phusionpassenger.com/) service.

Depending on your environment, this plugin can create a high number of series which can cause high load on your database. Please use [measurement filtering](/telegraf/v1/configuration/#metric-filtering) to manage your series cardinality!

The plugin uses the `passenger-status` command line tool.

This plugin requires the `passenger-status` binary to be installed on the system and to be executable by Telegraf.

[View](/telegraf/v1/input-plugins/passenger/)

### PF

Plugin ID: `inputs.pf`  
Telegraf v1.5.0+

This plugin gathers information from the FreeBSD or OpenBSD pf firewall like the number of current entries in the table, counters for the number of searches, inserts, and removals to tables using the `pfctl` command.

This plugin requires the `pfctl` binary to be executable by Telegraf. It requires read access to the device file `/dev/pf`.

[View](/telegraf/v1/input-plugins/pf/)

### PgBouncer

Plugin ID: `inputs.pgbouncer`  
Telegraf v1.8.0+

This plugin collects metrics from a [PgBouncer load balancer](https://pgbouncer.github.io) instance. Check the [documentation](https://pgbouncer.github.io/usage.html) for available metrics and their meaning.

This plugin requires PgBouncer v1.5+.

[View](/telegraf/v1/input-plugins/pgbouncer/)

### PHP-FPM

Plugin ID: `inputs.phpfpm`  
Telegraf v0.1.10+

This plugin gathers statistics of the [PHP FastCGI Process Manager](https://www.php.net/manual/en/install.fpm.php) using either the HTTP status page or the fpm socket.

[View](/telegraf/v1/input-plugins/phpfpm/)

### Ping

Plugin ID: `inputs.ping`  
Telegraf v0.1.8+

This plugin collects metrics on ICMP ping packets including the round-trip time, response times and other packet statistics.

When using the `exec` method the `ping` command must be available on the systems and executable by Telegraf.

[View](/telegraf/v1/input-plugins/ping/)

### Postfix

Plugin ID: `inputs.postfix`  
Telegraf v1.5.0+

This plugin collects metrics on a local [Postfix](https://www.postfix.org/) instance reporting the length, size and age of the active, hold, incoming, maildrop, and deferred [queues](https://www.postfix.org/QSHAPE_README.html#queues).

[View](/telegraf/v1/input-plugins/postfix/)

### PostgreSQL

Plugin ID: `inputs.postgresql`  
Telegraf v0.10.3+

This plugin provides metrics for a [PostgreSQL](https://www.postgresql.org/) Server instance. Recorded metrics are lightweight and use Dynamic Management Views supplied by PostgreSQL.

[View](/telegraf/v1/input-plugins/postgresql/)

### PostgreSQL Extensible

Plugin ID: `inputs.postgresql_extensible`  
Telegraf v0.12.0+

This plugin queries a [PostgreSQL](https://www.postgresql.org/) server and provides metrics for the returned result. This is useful when using PostgreSQL extensions to collect additional metrics.

Please also check the more generic [sql input plugin](/telegraf/v1/plugins/#input-sql).

[View](/telegraf/v1/input-plugins/postgresql_extensible/)

### PowerDNS

Plugin ID: `inputs.powerdns`  
Telegraf v0.10.2+

This plugin gathers metrics from [PowerDNS](https://www.powerdns.com/) servers using unix sockets.

This plugin will need access to the powerdns control socket.

[View](/telegraf/v1/input-plugins/powerdns/)

### PowerDNS Recursor

Plugin ID: `inputs.powerdns_recursor`  
Telegraf v1.11.0+

This plugin gathers metrics from [PowerDNS Recursor](https://www.powerdns.com/powerdns-recursor) instances using the unix control-sockets.

Telegraf will need read and write access to the control socket and the `socket_dir`.

[View](/telegraf/v1/input-plugins/powerdns_recursor/)

### Processes

Plugin ID: `inputs.processes`  
Telegraf v0.11.0+

This plugin gathers info about the total number of processes and groups them by status (zombie, sleeping, running, etc.)

On Linux this plugin requires access to procfs (/proc), on other operating systems the plugin must be able to execute the `ps` command.

[View](/telegraf/v1/input-plugins/processes/)

### Procstat

Plugin ID: `inputs.procstat`  
Telegraf v0.2.0+

This plugin allows to monitor the system resource usage of one or more processes. The plugin provides metrics about the individual processes as well as accumulated metrics on the number of PIDs returned on a search. Processes can be filtered e.g. by regular expressions on the command, the user owning the process or the service that started the process.

[View](/telegraf/v1/input-plugins/procstat/)

### Prometheus

Plugin ID: `inputs.prometheus`  
Telegraf v0.1.5+

This plugin gathers metrics from [Prometheus](https://prometheus.io/) metric endpoints such as applications implementing such an endpoint or node-exporter instances. This plugin also supports various service-discovery methods.

[View](/telegraf/v1/input-plugins/prometheus/)

### PromQL

Plugin ID: `inputs.promql`  
Telegraf v1.37.0+

This plugin gathers metrics from a [Prometheus](https://prometheus.io/) endpoint using [PromQL queries](https://prometheus.io/docs/prometheus/latest/querying/basics/) via the [HTTP API](https://prometheus.io/docs/prometheus/latest/querying/api/).

[View](/telegraf/v1/input-plugins/promql/)

### Proxmox

Plugin ID: `inputs.proxmox`  
Telegraf v1.16.0+

This plugin gathers metrics about containers and VMs running on a [Proxmox](https://www.proxmox.com) instance using the Proxmox API.

[View](/telegraf/v1/input-plugins/proxmox/)

### Puppet Agent

Plugin ID: `inputs.puppetagent`  
Telegraf v0.2.0+

This plugin gathers metrics of a [Puppet agent](https://www.puppet.com/) by parsing variables from the local last-run-summary file.

[View](/telegraf/v1/input-plugins/puppetagent/)

### RabbitMQ

Plugin ID: `inputs.rabbitmq`  
Telegraf v0.1.5+

This plugin gathers statistics from [RabbitMQ](https://www.rabbitmq.com) servers via the [Management Plugin](https://www.rabbitmq.com/management.html).

[View](/telegraf/v1/input-plugins/rabbitmq/)

### Radius

Plugin ID: `inputs.radius`  
Telegraf v1.26.0+

This plugin collects response times for [Radius](https://datatracker.ietf.org/doc/html/rfc2865) authentication requests.

[View](/telegraf/v1/input-plugins/radius/)

### Raindrops Middleware

Plugin ID: `inputs.raindrops`  
Telegraf v0.10.3+

This plugin collects statistics for [Raindrops middleware](http://raindrops.bogomips.org/Raindrops/Middleware.html) instances.

[View](/telegraf/v1/input-plugins/raindrops/)

### RAS Daemon

Plugin ID: `inputs.ras`  
Telegraf v1.16.0+

This plugin gathers statistics and error counts provided by the local [RAS (reliability, availability and serviceability)](https://github.com/mchehab/rasdaemon) daemon.

This plugin requires access to SQLite3 database from `RASDaemon`. Please make sure the Telegraf user has the required permissions to this database!

[View](/telegraf/v1/input-plugins/ras/)

### RavenDB

Plugin ID: `inputs.ravendb`  
Telegraf v1.18.0+

This plugin gathers metrics from [RavenDB](https://ravendb.net/) servers via the monitoring API.

This plugin requires RavenDB Server v5.2+.

[View](/telegraf/v1/input-plugins/ravendb/)

### Redfish

Plugin ID: `inputs.redfish`  
Telegraf v1.15.0+

This plugin gathers metrics and status information of server hardware with enabled [DMTF’s Redfish](https://redfish.dmtf.org/) support.

[View](/telegraf/v1/input-plugins/redfish/)

### Redis

Plugin ID: `inputs.redis`  
Telegraf v0.1.1+

This plugin gathers metrics from [Redis](https://redis.io/) servers.

[View](/telegraf/v1/input-plugins/redis/)

### Redis Sentinel

Plugin ID: `inputs.redis_sentinel`  
Telegraf v1.22.0+

This plugin collects metrics for [Redis Sentinel](https://redis.io/docs/latest/operate/oss_and_stack/management/sentinel/) instances monitoring Redis servers and replicas.

[View](/telegraf/v1/input-plugins/redis_sentinel/)

### RethinkDB

Plugin ID: `inputs.rethinkdb`  
Telegraf v0.1.3+

This plugin collects metrics from [RethinkDB](https://www.rethinkdb.com/) servers.

[View](/telegraf/v1/input-plugins/rethinkdb/)

### Riak

Plugin ID: `inputs.riak`  
Telegraf v0.10.4+

This plugin gathers metrics from [Riak](https://riak.com/) instances.

[View](/telegraf/v1/input-plugins/riak/)

### Riemann Listener

Plugin ID: `inputs.riemann_listener`  
Telegraf v1.17.0+

This service plugin listens for messages from [Riemann](https://riemann.io/) clients using the protocol buffer format.

[View](/telegraf/v1/input-plugins/riemann_listener/)

### Siemens S7

Plugin ID: `inputs.s7comm`  
Telegraf v1.28.0+

This plugin reads metrics from Siemens PLCs via the S7 protocol.

[View](/telegraf/v1/input-plugins/s7comm/)

### Salesforce

Plugin ID: `inputs.salesforce`  
Telegraf v1.4.0+

This plugin gathers metrics about the limits in your [Salesforce](https://salesforce.com) organization and the remaining usage using the [limits endpoint](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/resources_limits.htm) of Salesforce’s REST API.

[View](/telegraf/v1/input-plugins/salesforce/)

### LM Sensors

Plugin ID: `inputs.sensors`  
Telegraf v0.10.1+

This plugin collects metrics from hardware sensors using [lm-sensors](https://en.wikipedia.org/wiki/Lm_sensors).

This plugin requires the lm-sensors package to be installed on the system and `sensors` to be executable from Telegraf.

[View](/telegraf/v1/input-plugins/sensors/)

### SFlow

Plugin ID: `inputs.sflow`  
Telegraf v1.14.0+

This service plugin produces metrics from information received by acting as a [SFlow V5](https://sflow.org/sflow_version_5.txt) collector. Currently, the plugin can collect Flow Samples of Ethernet / IPv4, IPv4 TCP and UDP headers. Counters and other header samples are ignored. Please use the [netflow plugin](/telegraf/v1/plugins/#input-netflow) for a more modern and sophisticated implementation.

This plugin produces high cardinality data, which when not controlled for will cause high load on your database. Please make sure to [filter](/telegraf/v1/configuration/#metric-filtering) the produced metrics or configure your database to avoid cardinality issues!

[View](/telegraf/v1/input-plugins/sflow/)

### SIP

Plugin ID: `inputs.sip`  
Telegraf v1.38.0+

This plugin gathers metrics about the health and availability of [SIP (Session Initiation Protocol)](https://datatracker.ietf.org/doc/html/rfc3261) servers such as PBX systems, SIP proxies, registrars, and VoIP service providers. It sends SIP requests (typically OPTIONS) and measures response times and status codes.

[View](/telegraf/v1/input-plugins/sip/)

### Slab

Plugin ID: `inputs.slab`  
Telegraf v1.23.0+

This plugin collects details on memory consumption of [Slab cache](https://www.kernel.org/doc/gorman/html/understand/understand011.html) entries by parsing the `/proc/slabinfo` file respecting the `HOST_PROC` environment variable.

This plugin requires `/proc/slabinfo` to be readable by the Telegraf user.

[View](/telegraf/v1/input-plugins/slab/)

### SLURM

Plugin ID: `inputs.slurm`  
Telegraf v1.32.0+

This plugin gather diagnoses, jobs, nodes, partitions and reservation metrics for a [SLURM](https://slurm.schedmd.com) instance using the REST API provided by the `slurmrestd` daemon.

This plugin supports the [REST API v0.0.38](https://slurm.schedmd.com/rest.html) which must be enabled in the `slurmrestd` daemon. For more information, check the [documentation](https://slurm.schedmd.com/rest_quickstart.html#customization).

[View](/telegraf/v1/input-plugins/slurm/)

### S.M.A.R.T.

Plugin ID: `inputs.smart`  
Telegraf v1.5.0+

This plugin collects [Self-Monitoring, Analysis and Reporting Technology](https://en.wikipedia.org/wiki/Self-Monitoring,_Analysis_and_Reporting_Technology) information for storage devices information using the `smartmontools` package. This plugin also supports NVMe devices by using the [`nvme-cli`](https://github.com/linux-nvme/nvme-cli) package.

This plugin requires the `smartmontools` and, for NVMe devices, the [`nvme-cli`](https://github.com/linux-nvme/nvme-cli) packages to be installed on your system. The `smartctl` and `nvme` commands must to be executable by Telegraf.

[View](/telegraf/v1/input-plugins/smart/)

### smartctl JSON

Plugin ID: `inputs.smartctl`  
Telegraf v1.31.0+

This plugin collects [Self-Monitoring, Analysis and Reporting Technology](https://en.wikipedia.org/wiki/Self-Monitoring,_Analysis_and_Reporting_Technology) information for storage devices information using the `smartmontools` package. Contrary to the [smart plugin](/telegraf/v1/plugins/#input-smart), this plugin does not use the [`nvme-cli`](https://github.com/linux-nvme/nvme-cli) package to collect additional information about NVMe devices.

This plugin requires `smartmontools` to be installed on your system. The `smartctl` command must be executable by Telegraf and must supporting JSON output. JSON output was added in v7.0 and improved in subsequent releases

[View](/telegraf/v1/input-plugins/smartctl/)

### SNMP

Plugin ID: `inputs.snmp`  
Telegraf v0.10.1+

This plugin gathers metrics by polling [SNMP](https://datatracker.ietf.org/doc/html/rfc1157) agents with individual OIDs or complete SNMP tables.

The path setting is shared between all instances of all SNMP plugin types!

[View](/telegraf/v1/input-plugins/snmp/)

### SNMP Trap

Plugin ID: `inputs.snmp_trap`  
Telegraf v1.13.0+

This service plugin listens for [SNMP](https://datatracker.ietf.org/doc/html/rfc1157) notifications like traps and inform requests. Notifications are received on plain UDP with a configurable port.

The path setting is shared between all instances of all SNMP plugin types!

[View](/telegraf/v1/input-plugins/snmp_trap/)

### Socket Listener

Plugin ID: `inputs.socket_listener`  
Telegraf v1.3.0+

This service plugin listens for messages on sockets (TCP, UDP, Unix or Unixgram) and parses the packets received in one of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/socket_listener/)

### Socket Statistics

Plugin ID: `inputs.socketstat`  
Telegraf v1.22.0+

This plugin gathers metrics for established network connections using [iproute2](https://github.com/iproute2/iproute2)’s `ss` command. The `ss` command does not require specific privileges.

This plugin produces high cardinality data, which when not controlled for will cause high load on your database. Please make sure to [filter](/telegraf/v1/configuration/#metric-filtering) the produced metrics or configure your database to avoid cardinality issues!

[View](/telegraf/v1/input-plugins/socketstat/)

### Apache Solr

Plugin ID: `inputs.solr`  
Telegraf v1.5.0+

This plugin collects statistics from [Solr](http://lucene.apache.org/solr/) instances using the [MBean Request Handler](https://cwiki.apache.org/confluence/display/solr/MBean+Request+Handler). For additional details on performance statistics check the [performance statistics reference](https://cwiki.apache.org/confluence/display/solr/Performance+Statistics+Reference).

This plugin requires Apache Solr v3.5+.

[View](/telegraf/v1/input-plugins/solr/)

### SQL

Plugin ID: `inputs.sql`  
Telegraf v1.19.0+

This plugin reads metrics from performing [SQL](https://www.iso.org/standard/76583.html) queries against a SQL server. Different server types are supported and their settings might differ (especially the connection parameters). Please check the list of [supported SQL drivers](/docs/SQL_DRIVERS_INPUT.md) for the `driver` name and options for the data-source-name (`dsn`) options.

[View](/telegraf/v1/input-plugins/sql/)

### Microsoft SQL Server

Plugin ID: `inputs.sqlserver`  
Telegraf v0.10.1+

This plugin provides metrics for your [SQL Server](https://docs.microsoft.com/en-us/sql/sql-server) instance. Recorded metrics are lightweight and use Dynamic Management Views supplied by SQL Server.

This plugin supports SQL server versions supported by Microsoft (see [lifecycle dates](https://docs.microsoft.com/en-us/sql/sql-server/end-of-support/sql-server-end-of-life-overview?view=sql-server-ver15#lifecycle-dates)), Azure SQL Databases (Single), Azure SQL Managed Instances, Azure SQL Elastic Pools and Azure Arc-enabled SQL Managed Instances.

[View](/telegraf/v1/input-plugins/sqlserver/)

### Stackdriver Google Cloud Monitoring

Plugin ID: `inputs.stackdriver`  
Telegraf v1.10.0+

This plugin collects metrics from [Google Cloud Monitoring](https://cloud.google.com/monitoring) (formerly Stackdriver) using the [Cloud Monitoring API v3](https://cloud.google.com/monitoring/api/v3/).

This plugin accesses APIs which are [chargeable](https://cloud.google.com/stackdriver/pricing#stackdriver_monitoring_services), cost might incur.

[View](/telegraf/v1/input-plugins/stackdriver/)

### StatsD

Plugin ID: `inputs.statsd`  
Telegraf v0.2.0+

This service plugin gathers metrics from a [Statsd](https://github.com/statsd/statsd) server.

[View](/telegraf/v1/input-plugins/statsd/)

### Supervisor

Plugin ID: `inputs.supervisor`  
Telegraf v1.24.0+

This plugin gathers information about processes running under [supervisord](https://supervisord.org/) using the [XML-RPC API](https://supervisord.org/api.html).

This plugin requires supervisor v3.3.2+.

[View](/telegraf/v1/input-plugins/supervisor/)

### Suricata

Plugin ID: `inputs.suricata`  
Telegraf v1.13.0+

This service plugin reports internal performance counters of the [Suricata IDS/IPS](https://suricata.io/) engine, such as captured traffic volume, memory usage, uptime, flow counters, and much more. This plugin provides a socket for the Suricata log output to write JSON stats output to, and processes the incoming data to fit Telegraf’s format. It can also report for triggered Suricata IDS/IPS alerts.

[View](/telegraf/v1/input-plugins/suricata/)

### Swap

Plugin ID: `inputs.swap`  
Telegraf v1.7.0+

This plugin collects metrics on the operating-system’s swap memory.

[View](/telegraf/v1/input-plugins/swap/)

### Synproxy

Plugin ID: `inputs.synproxy`  
Telegraf v1.13.0+

This plugin gathers metrics about the Linux netfilter’s [synproxy](https://wiki.nftables.org/wiki-nftables/index.php/Synproxy) module used for mitigating SYN attacks.

[View](/telegraf/v1/input-plugins/synproxy/)

### Syslog

Plugin ID: `inputs.syslog`  
Telegraf v1.7.0+

This service plugin listens for [syslog](https://en.wikipedia.org/wiki/Syslog) messages transmitted over a Unix Domain socket, [UDP](https://tools.ietf.org/html/rfc5426), [TCP](https://tools.ietf.org/html/rfc6587) or [TLS](https://tools.ietf.org/html/rfc5425) with or without the octet counting framing.

Syslog messages should be formatted according to the [syslog protocol](https://tools.ietf.org/html/rfc5424) or the [BSD syslog protocol](https://tools.ietf.org/html/rfc3164).

[View](/telegraf/v1/input-plugins/syslog/)

### System Performance Statistics

Plugin ID: `inputs.sysstat`  
Telegraf v0.12.1+

This plugin collects Linux [system performance statistics](https://github.com/sysstat/sysstat) using the `sysstat` package. This plugin uses the `sadc` collector utility and and parses the created binary data file using the `sadf` utility.

This plugin requires the `sysstat` package to be installed on the system and both `sadc` and `sadf` to be executable by Telegraf.

[View](/telegraf/v1/input-plugins/sysstat/)

### System

Plugin ID: `inputs.system`  
Telegraf v0.1.6+

This plugin gathers general system statistics like system load, uptime or the number of users logged in. It is similar to the unix `uptime` command.

[View](/telegraf/v1/input-plugins/system/)

### Systemd-Units

Plugin ID: `inputs.systemd_units`  
Telegraf v1.13.0+

This plugin gathers the status of systemd-units on Linux, using systemd’s DBus interface.

This plugin requires systemd v230+!

[View](/telegraf/v1/input-plugins/systemd_units/)

### Tacacs

Plugin ID: `inputs.tacacs`  
Telegraf v1.28.0+

This plugin collects metrics on [Terminal Access Controller Access Control System](https://datatracker.ietf.org/doc/html/rfc1492) authentication requests like response status and response time from servers such as [Aruba ClearPass](https://www.hpe.com/de/de/aruba-clearpass-policy-manager.html), [FreeRADIUS](https://www.freeradius.org/) or [TACACS+](https://datatracker.ietf.org/doc/html/rfc8907).

The plugin is primarily meant to monitor how long it takes for the server to fully handle an authentication request, including all potential dependent calls (for example to AD servers, or other sources of truth).

[View](/telegraf/v1/input-plugins/tacacs/)

### Tail

Plugin ID: `inputs.tail`  
Telegraf v1.1.2+

This service plugin continuously reads a file and parses new data as it arrives similar to the [tail -f command](https://man7.org/linux/man-pages/man1/tail.1.html). The incoming messages are expected to be in one of the supported [data formats](/telegraf/v1/data_formats/input).

[View](/telegraf/v1/input-plugins/tail/)

### Teamspeak

Plugin ID: `inputs.teamspeak`  
Telegraf v1.5.0+

This plugin collects statistics of one or more virtual [Teamspeak](https://www.teamspeak.com) servers using the `ServerQuery` interface. Currently this plugin only supports Teamspeak 3 servers.

For querying external Teamspeak server, make sure to add the Telegraf host to the `query_ip_allowlist.txt` file in the Teamspeak Server directory.

[View](/telegraf/v1/input-plugins/teamspeak/)

### Temperature

Plugin ID: `inputs.temp`  
Telegraf v1.8.0+

This plugin gathers metrics on system temperatures.

[View](/telegraf/v1/input-plugins/temp/)

### Tengine Web Server

Plugin ID: `inputs.tengine`  
Telegraf v1.8.0+

This plugin gathers metrics from the [Tengine Web Server](http://tengine.taobao.org) via the [reqstat](http://tengine.taobao.org/document/http_reqstat.html) module.

[View](/telegraf/v1/input-plugins/tengine/)

### Timex

Plugin ID: `inputs.timex`  
Telegraf v1.37.0+

This plugin gathers metrics on system time using the Linux Kernel [adjtimex syscall](https://man7.org/linux/man-pages/man2/adjtimex.2.html).

The call gets the information of the kernel time variables that are controlled by the ntpd, systemd-timesyncd, chrony or other time synchronization services.

[View](/telegraf/v1/input-plugins/timex/)

### Apache Tomcat

Plugin ID: `inputs.tomcat`  
Telegraf v1.4.0+

This plugin collects statistics from a [Tomcat server](https://tomcat.apache.org) instance using the manager status page. See the [Tomcat documentation](https://tomcat.apache.org/tomcat-9.0-doc/manager-howto.html#Server_Status) for details of these statistics.

[View](/telegraf/v1/input-plugins/tomcat/)

### Trig

Plugin ID: `inputs.trig`  
Telegraf v0.3.0+

This plugin is for demonstration purposes and inserts sine and cosine values as metrics.

[View](/telegraf/v1/input-plugins/trig/)

### Turbostat

Plugin ID: `inputs.turbostat`  
Telegraf v1.36.0+

This service plugin monitors system performance using the [turbostat](https://github.com/torvalds/linux/tree/master/tools/power/x86/turbostat) command.

This plugin requires the `turbostat` executable to be installed on the system.

[View](/telegraf/v1/input-plugins/turbostat/)

### Twemproxy

Plugin ID: `inputs.twemproxy`  
Telegraf v0.3.0+

This plugin gathers statistics from [Twemproxy](https://github.com/twitter/twemproxy) servers.

[View](/telegraf/v1/input-plugins/twemproxy/)

### Unbound

Plugin ID: `inputs.unbound`  
Telegraf v1.5.0+

This plugin gathers stats from an [Unbound](https://www.unbound.net) DNS resolver.

[View](/telegraf/v1/input-plugins/unbound/)

### UPSD

Plugin ID: `inputs.upsd`  
Telegraf v1.24.0+

This plugin reads data of one or more Uninterruptible Power Supplies from a [Network UPS Tools](https://networkupstools.org/) daemon using its NUT network protocol.

[View](/telegraf/v1/input-plugins/upsd/)

### uWSGI

Plugin ID: `inputs.uwsgi`  
Telegraf v1.12.0+

This plugin gathers metrics about [uWSGI](https://uwsgi-docs.readthedocs.io/en/latest/) using its [Stats Server](https://uwsgi-docs.readthedocs.io/en/latest/StatsServer.html).

[View](/telegraf/v1/input-plugins/uwsgi/)

### Varnish

Plugin ID: `inputs.varnish`  
Telegraf v0.13.1+

This plugin gathers statistics from a local [Varnish HTTP Cache](https://varnish-cache.org) instance using the `varnishstat` command.

This plugin requires the `varnishstat` executable to be installed on the system and executable by Telegraf. Furthermore, the plugin requires Varnish v6.0.2+.

[View](/telegraf/v1/input-plugins/varnish/)

### Hashicorp Vault

Plugin ID: `inputs.vault`  
Telegraf v1.22.0+

This plugin collects metrics from every [Vault](https://www.hashicorp.com/de/products/vault) agent of a cluster.

This plugin requires Vault v1.8.5+

[View](/telegraf/v1/input-plugins/vault/)

### VMware vSphere

Plugin ID: `inputs.vsphere`  
Telegraf v1.8.0+

This plugin gathers metrics from [vSphere](https://www.vmware.com/products/cloud-infrastructure/vsphere) servers of a vCenter including clusters, hosts, resource pools, VMs, datastores and vSAN information.

This plugin requires vSphere v7.0+.

[View](/telegraf/v1/input-plugins/vsphere/)

### Webhooks

Plugin ID: `inputs.webhooks`  
Telegraf v1.0.0+

This service plugin provides an HTTP server and register for multiple webhook listeners.

[View](/telegraf/v1/input-plugins/webhooks/)

### WHOIS

Plugin ID: `inputs.whois`  
Telegraf v1.35.0+

This plugin queries [WHOIS information](https://datatracker.ietf.org/doc/html/rfc3912) for configured domains and provides metrics such as expiration timestamps, registrar details and domain status from e.g. [IANA](https://www.iana.org/whois) or [ICANN](https://lookup.icann.org/) servers.

[View](/telegraf/v1/input-plugins/whois/)

### Windows Eventlog

Plugin ID: `inputs.win_eventlog`  
Telegraf v1.16.0+

This plugin gathers metrics from the [Windows event log](https://learn.microsoft.com/en-us/shows/inside/event-viewer) on Windows Vista and higher.

Some event channels, like the System Log, require Administrator permissions to subscribe.

[View](/telegraf/v1/input-plugins/win_eventlog/)

### Windows Performance Counters

Plugin ID: `inputs.win_perf_counters`  
Telegraf v0.10.2+

This plugin produces metrics from the collected [Windows Performance Counters](https://learn.microsoft.com/en-us/windows/win32/perfctrs/about-performance-counters).

[View](/telegraf/v1/input-plugins/win_perf_counters/)

### Windows Services

Plugin ID: `inputs.win_services`  
Telegraf v1.4.0+

This plugin collects information about the status of Windows services.

Monitoring some services may require running Telegraf with administrator privileges.

[View](/telegraf/v1/input-plugins/win_services/)

### Windows Management Instrumentation

Plugin ID: `inputs.win_wmi`  
Telegraf v1.26.0+

This plugin queries information or invokes methods using [Windows Management Instrumentation](https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-start-page) classes. This allows capturing and filtering virtually any configuration or metric value exposed through WMI.

The telegraf service user must have at least permission to [read](https://learn.microsoft.com/en-us/windows/win32/wmisdk/access-to-wmi-namespaces) the WMI namespace being queried.

[View](/telegraf/v1/input-plugins/win_wmi/)

### Wireguard

Plugin ID: `inputs.wireguard`  
Telegraf v1.14.0+

This plugin collects statistics on a local [Wireguard](https://www.wireguard.com/) server using the [`wgctrl` library](https://github.com/WireGuard/wgctrl-go). The plugin reports gauge metrics for Wireguard interface device(s) and its peers.

[View](/telegraf/v1/input-plugins/wireguard/)

### Wireless

Plugin ID: `inputs.wireless`  
Telegraf v1.9.0+

This plugin gathers metrics about wireless link quality by reading the `/proc/net/wireless` file.

[View](/telegraf/v1/input-plugins/wireless/)

### x509 Certificate

Plugin ID: `inputs.x509_cert`  
Telegraf v1.8.0+

This plugin provides information about [X.509](https://en.wikipedia.org/wiki/X.509) certificates accessible e.g. via local file, tcp, udp, https or smtp protocols and the Windows Certificate Store.

When using a UDP address as a certificate source, the server must support [DTLS](https://en.wikipedia.org/wiki/Datagram_Transport_Layer_Security).

[View](/telegraf/v1/input-plugins/x509_cert/)

### Dell EMC XtremIO

Plugin ID: `inputs.xtremio`  
Telegraf v1.22.0+

This plugin gathers metrics from a [Dell EMC XtremIO Storage Array](https://www.delltechnologies.com/asset/en-sa/products/storage/industry-market/h16444-introduction-xtremio-x2-storage-array-wp.pdf) instance using the [v3 Rest API](https://dl.dell.com/content/docu96624_xtremio-storage-array-x1-and-x2-cluster-types-with-xms-6-3-0-to-6-3-3-and-xios-4-0-15-to-4-0-31-and-6-0-0-to-6-3-3-restful-api-3-x-guide.pdf).

[View](/telegraf/v1/input-plugins/xtremio/)

### ZFS

Plugin ID: `inputs.zfs`  
Telegraf v0.2.1+

This plugin gathers metrics from [ZFS](https://en.wikipedia.org/wiki/ZFS) filesystems using `/proc/spl/kstat/zfs` on Linux and `sysctl`, `zfs` and `zpool` on FreeBSD.

[View](/telegraf/v1/input-plugins/zfs/)

### Zipkin

Plugin ID: `inputs.zipkin`  
Telegraf v1.4.0+

This service plugin implements the [Zipkin](https://zipkin.io/) HTTP server to gather trace and timing data needed to troubleshoot latency problems in microservice architectures.

This plugin produces high cardinality data, which when not controlled for will cause high load on your database. Please make sure to [filter](/telegraf/v1/configuration/#metric-filtering) the produced metrics or configure your database to avoid cardinality issues!

[View](/telegraf/v1/input-plugins/zipkin/)

### Apache Zookeeper

Plugin ID: `inputs.zookeeper`  
Telegraf v0.2.0+

This plugin collects variables from [Zookeeper](https://zookeeper.apache.org) instances using the [`mntr` command](https://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_zkCommands).

If the Prometheus Metric provider is enabled in Zookeeper use the [prometheus plugin](/telegraf/v1/plugins/#input-prometheus) instead with `http://<ip>:7000/metrics`.

[View](/telegraf/v1/input-plugins/zookeeper/)

## Output plugins

Telegraf processor plugins write metrics to various destinations.

### Amon

Plugin ID: `outputs.amon`  
Telegraf v0.2.1 - v1.37.0 Deprecated

This plugin writes metrics to [Amon monitoring platform](https://www.amon.cx). It requires a `serverkey` and `amoninstance` URL which can be obtained from the [website](https://www.amon.cx/docs/monitoring/) for your account.

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

[View](/telegraf/v1/output-plugins/amon/)

### AMQP

Plugin ID: `outputs.amqp`  
Telegraf v0.1.9+

This plugin writes to an Advanced Message Queuing Protocol v0.9.1 broker. A prominent implementation of this protocol is [RabbitMQ](https://www.rabbitmq.com).

This plugin does not bind the AMQP exchange to a queue.

For an introduction check the [AMQP concepts page](https://www.rabbitmq.com/tutorials/amqp-concepts.html) and the [RabbitMQ getting started guide](https://www.rabbitmq.com/getstarted.html).

[View](/telegraf/v1/output-plugins/amqp/)

### Azure Application Insights

Plugin ID: `outputs.application_insights`  
Telegraf v1.7.0+

This plugin writes metrics to the [Azure Application Insights](https://azure.microsoft.com/en-us/services/application-insights/) service.

[View](/telegraf/v1/output-plugins/application_insights/)

### Arc

Plugin ID: `outputs.arc`  
Telegraf v1.37.0+

This plugin writes metrics to [Arc](https://github.com/basekick-labs/arc), a high-performance time-series database, via MessagePack binary protocol messages providing a **3-5x better performance** than the line-protocol format.

[View](/telegraf/v1/output-plugins/arc/)

### Azure Data Explorer

Plugin ID: `outputs.azure_data_explorer`  
Telegraf v1.20.0+

This plugin writes metrics to the [Azure Data Explorer](https://docs.microsoft.com/en-us/azure/data-explorer), [Azure Synapse Data Explorer](https://docs.microsoft.com/en-us/azure/synapse-analytics/data-explorer/data-explorer-overview), and [Real time analytics in Fabric](https://learn.microsoft.com/en-us/fabric/real-time-analytics/overview) services.

Azure Data Explorer is a distributed, columnar store, purpose built for any type of logs, metrics and time series data.

[View](/telegraf/v1/output-plugins/azure_data_explorer/)

### Azure Monitor

Plugin ID: `outputs.azure_monitor`  
Telegraf v1.8.0+

This plugin writes metrics to [Azure Monitor](https://learn.microsoft.com/en-us/azure/azure-monitor) which has a metric resolution of one minute. To accomodate for this in Telegraf, the plugin will automatically aggregate metrics into one minute buckets and send them to the service on every flush interval.

The Azure Monitor custom metrics service is currently in preview and might not be available in all Azure regions. Please also take the metric time limitations into account!

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, count. Tags are written as a dimension on each Azure Monitor metric.

[View](/telegraf/v1/output-plugins/azure_monitor/)

### Google BigQuery

Plugin ID: `outputs.bigquery`  
Telegraf v1.18.0+

This plugin writes metrics to the [Google Cloud BigQuery](https://cloud.google.com/bigquery) service and requires [authentication](https://cloud.google.com/bigquery/docs/authentication) with Google Cloud using either a service account or user credentials.

Be aware that this plugin accesses APIs that are [chargeable](https://cloud.google.com/bigquery/pricing) and might incur costs.

[View](/telegraf/v1/output-plugins/bigquery/)

### Clarify

Plugin ID: `outputs.clarify`  
Telegraf v1.27.0+

This plugin writes metrics to [Clarify](https://clarify.io). To use this plugin you will need to obtain a set of [credentials](https://docs.clarify.io/users/admin/integrations/credentials).

[View](/telegraf/v1/output-plugins/clarify/)

### Google Cloud PubSub

Plugin ID: `outputs.cloud_pubsub`  
Telegraf v1.10.0+

This plugin publishes metrics to a [Google Cloud PubSub](https://cloud.google.com/pubsub) topic in one of the supported [data formats](/telegraf/v1/data_formats/output).

[View](/telegraf/v1/output-plugins/cloud_pubsub/)

### Amazon CloudWatch

Plugin ID: `outputs.cloudwatch`  
Telegraf v0.10.1+

This plugin writes metrics to the [Amazon CloudWatch](https://aws.amazon.com/cloudwatch) service.

[View](/telegraf/v1/output-plugins/cloudwatch/)

### Amazon CloudWatch Logs

Plugin ID: `outputs.cloudwatch_logs`  
Telegraf v1.19.0+

This plugin writes log-metrics to the [Amazon CloudWatch](https://aws.amazon.com/cloudwatch) service.

[View](/telegraf/v1/output-plugins/cloudwatch_logs/)

### CrateDB

Plugin ID: `outputs.cratedb`  
Telegraf v1.5.0+

This plugin writes metrics to [CrateDB](https://crate.io/) via its [PostgreSQL protocol](https://crate.io/docs/crate/reference/protocols/postgres.html).

[View](/telegraf/v1/output-plugins/cratedb/)

### Datadog

Plugin ID: `outputs.datadog`  
Telegraf v0.1.6+

This plugin writes metrics to the [Datadog Metrics API](https://docs.datadoghq.com/api/v1/metrics/#submit-metrics) and requires an `apikey` which can be obtained on the [website](https://app.datadoghq.com/account/settings#api) for the account.

This plugin supports the v1 API.

[View](/telegraf/v1/output-plugins/datadog/)

### Discard

Plugin ID: `outputs.discard`  
Telegraf v1.2.0+

This plugin discards all metrics written to it and is meant for testing purposes.

[View](/telegraf/v1/output-plugins/discard/)

### Dynatrace

Plugin ID: `outputs.dynatrace`  
Telegraf v1.16.0+

This plugin writes metrics to [Dynatrace](https://www.dynatrace.com) via the [Dynatrace Metrics API V2](https://docs.dynatrace.com/docs/shortlink/api-metrics-v2). It may be run alongside the Dynatrace OneAgent for automatic authentication or it may be run standalone on a host without OneAgent by specifying a URL and API Token.

More information on the plugin can be found in the [Dynatrace documentation](https://docs.dynatrace.com/docs/shortlink/telegraf).

All metrics are reported as gauges, unless they are specified to be delta counters using the `additional_counters` or `additional_counters_patterns` config option (see below). See the [Dynatrace Metrics ingestion protocol documentation](https://docs.dynatrace.com/docs/shortlink/metric-ingestion-protocol) for details on the types defined there.

[View](/telegraf/v1/output-plugins/dynatrace/)

### Elasticsearch

Plugin ID: `outputs.elasticsearch`  
Telegraf v0.1.5+

This plugin writes metrics to [Elasticsearch](https://www.elastic.co) via HTTP using the [Elastic client library](http://olivere.github.io/elastic/). The plugin supports Elasticsearch releases from v5.x up to v7.x.

[View](/telegraf/v1/output-plugins/elasticsearch/)

### Azure Event Hubs

Plugin ID: `outputs.event_hubs`  
Telegraf v1.21.0+

This plugin writes metrics to the [Azure Event Hubs](https://azure.microsoft.com/en-gb/services/event-hubs/) service in any of the supported [data formats](/telegraf/v1/data_formats/output). Metrics are sent as batches with each message payload containing one metric object, preferably as JSON as this eases integration with downstream components.

Each patch is sent to a single Event Hub within a namespace. In case no partition key is specified the batches will be automatically load-balanced (round-robin) across all the Event Hub partitions.

[View](/telegraf/v1/output-plugins/event_hubs/)

### Executable

Plugin ID: `outputs.exec`  
Telegraf v1.12.0+

This plugin writes metrics to an external application via `stdin`. The command will be executed on each write creating a new process. Metrics are passed in one of the supported [data formats](/telegraf/v1/data_formats/output).

The executable and the individual parameters must be defined as a list. All outputs of the executable to `stderr` will be logged in the Telegraf log.

For better performance consider execd which runs continuously.

[View](/telegraf/v1/output-plugins/exec/)

### Executable Daemon

Plugin ID: `outputs.execd`  
Telegraf v1.15.0+

This plugin writes metrics to an external daemon program via `stdin`. The command will be executed once and metrics will be passed to it on every write in one of the supported [data formats](/telegraf/v1/data_formats/output). The executable and the individual parameters must be defined as a list.

All outputs of the executable to `stderr` will be logged in the Telegraf log. Telegraf minimum version: Telegraf 1.15.0

[View](/telegraf/v1/output-plugins/execd/)

### File

Plugin ID: `outputs.file`  
Telegraf v0.10.3+

This plugin writes metrics to one or more local files in one of the supported [data formats](/telegraf/v1/data_formats/output).

[View](/telegraf/v1/output-plugins/file/)

### Graphite

Plugin ID: `outputs.graphite`  
Telegraf v0.10.1+

This plugin writes metrics to [Graphite](http://graphite.readthedocs.org/en/latest/index.html) via TCP. For details on the translation between Telegraf Metrics and Graphite output see the [Graphite data format](/telegraf/v1/plugins/#serializer-graphite).

[View](/telegraf/v1/output-plugins/graphite/)

### Graylog

Plugin ID: `outputs.graylog`  
Telegraf v1.0.0+

This plugin writes metrics to a [Graylog](https://graylog.org/) instance using the [GELF data format](https://docs.graylog.org/en/3.1/pages/gelf.html#gelf-payload-specification).

[View](/telegraf/v1/output-plugins/graylog/)

### GroundWork

Plugin ID: `outputs.groundwork`  
Telegraf v1.21.0+

This plugin writes metrics to a [GroundWork Monitor](https://www.gwos.com/product/groundwork-monitor/) instance.

Plugin only supports GroundWork v8 or later.

[View](/telegraf/v1/output-plugins/groundwork/)

### Health

Plugin ID: `outputs.health`  
Telegraf v1.11.0+

This plugin provides a HTTP health check endpoint that can be configured to return failure status codes based on the value of a metric.

When the plugin is healthy it will return a 200 response; when unhealthy it will return a 503 response. The default state is healthy, one or more checks must fail in order for the resource to enter the failed state.

[View](/telegraf/v1/output-plugins/health/)

### Heartbeat

Plugin ID: `outputs.heartbeat`  
Telegraf v1.37.0+

This plugin sends a heartbeat signal via POST to a HTTP endpoint on a regular interval. This is useful to keep track of existing Telegraf instances in a large deployment.

[View](/telegraf/v1/output-plugins/heartbeat/)

### HTTP

Plugin ID: `outputs.http`  
Telegraf v1.7.0+

This plugin writes metrics to a HTTP endpoint using one of the supported [data formats](/telegraf/v1/data_formats/output). For data formats supporting batching, metrics are sent in batches by default.

[View](/telegraf/v1/output-plugins/http/)

### InfluxDB v1.x

Plugin ID: `outputs.influxdb`  
Telegraf v0.1.1+

This plugin writes metrics to a [InfluxDB v1.x](https://docs.influxdata.com/influxdb/v1) instance via HTTP or UDP protocol.

[View](/telegraf/v1/output-plugins/influxdb/)

### InfluxDB v2.x

Plugin ID: `outputs.influxdb_v2`  
Telegraf v1.8.0+

This plugin writes metrics to a [InfluxDB v2.x](https://docs.influxdata.com/influxdb/v2) instance via HTTP.

[View](/telegraf/v1/output-plugins/influxdb_v2/)

### InfluxDB v3.x

Plugin ID: `outputs.influxdb_v3`  
Telegraf v1.38.0+

This plugin writes metrics to a [InfluxDB v3.x](https://docs.influxdata.com) Core or Enterprise instance via the HTTP API.

[View](/telegraf/v1/output-plugins/influxdb_v3/)

### Inlong

Plugin ID: `outputs.inlong`  
Telegraf v1.35.0+

This plugin publishes metrics to an [Apache InLong](https://inlong.apache.org) instance.

[View](/telegraf/v1/output-plugins/inlong/)

### Instrumental

Plugin ID: `outputs.instrumental`  
Telegraf v0.13.1+

This plugin writes metrics to the [Instrumental Collector API](https://instrumentalapp.com/docs/tcp-collector) 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 via the [statsd input plugin](/telegraf/v1/plugins/#input-statsd).

[View](/telegraf/v1/output-plugins/instrumental/)

### Apache IoTDB

Plugin ID: `outputs.iotdb`  
Telegraf v1.24.0+

This plugin writes metrics to an [Apache IoTDB](https://iotdb.apache.org) instance, a database for the Internet of Things, supporting session connection and data insertion.

[View](/telegraf/v1/output-plugins/iotdb/)

### Kafka

Plugin ID: `outputs.kafka`  
Telegraf v0.1.7+

This plugin writes metrics to a [Kafka Broker](http://kafka.apache.org) acting a Kafka Producer.

[View](/telegraf/v1/output-plugins/kafka/)

### Amazon Kinesis

Plugin ID: `outputs.kinesis`  
Telegraf v0.2.5+

This plugin writes metrics to a [Amazon Kinesis](https://aws.amazon.com/kinesis) endpoint. It will batch all Points in one request to reduce the number of API requests.

Please consult [Amazon’s official documentation](http://docs.aws.amazon.com/kinesis/latest/dev/key-concepts.html) for more details on the Kinesis architecture and concepts.

[View](/telegraf/v1/output-plugins/kinesis/)

### Librato

Plugin ID: `outputs.librato`  
Telegraf v0.2.0+

This plugin writes metrics to the [Librato](https://www.librato.com/) service. It requires an `api_user` and `api_token` which can be obtained on the [website](https://metrics.librato.com/account/api_tokens) for your account.

The `source_tag` option in the Configuration file is used to send contextual information from Point Tags to the API. Besides from this, the plugin currently does not send any additional associated Point Tags.

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

[View](/telegraf/v1/output-plugins/librato/)

### Logz.io

Plugin ID: `outputs.logzio`  
Telegraf v1.17.0+

This plugin writes metrics to the [Logz.io](https://logz.io) service via HTTP.

[View](/telegraf/v1/output-plugins/logzio/)

### Grafana Loki

Plugin ID: `outputs.loki`  
Telegraf v1.18.0+

This plugin writes logs to a [Grafana Loki](https://grafana.com/loki) instance, using the metric name and tags as labels. The log line will contain all fields in `key="value"` format easily parsable with the `logfmt` parser in Loki.

Logs within each stream are sorted by timestamp before being sent to Loki.

[View](/telegraf/v1/output-plugins/loki/)

### Microsoft Fabric

Plugin ID: `outputs.microsoft_fabric`  
Telegraf v1.35.0+

This plugin writes metrics to [Fabric Eventhouse](https://learn.microsoft.com/fabric/real-time-intelligence/eventhouse) and [Fabric Eventstream](https://learn.microsoft.com/fabric/real-time-intelligence/event-streams/overview?tabs=enhancedcapabilities) artifacts of [Real-Time Intelligence in Microsoft Fabric](https://learn.microsoft.com/fabric/real-time-intelligence/overview).

Real-Time Intelligence is a SaaS service in Microsoft Fabric that allows you to extract insights and visualize data in motion. It offers an end-to-end solution for event-driven scenarios, streaming data, and data logs.

[View](/telegraf/v1/output-plugins/microsoft_fabric/)

### MongoDB

Plugin ID: `outputs.mongodb`  
Telegraf v1.21.0+

This plugin writes metrics to [MongoDB](https://www.mongodb.com) automatically creating collections as time series collections if they don’t exist.

This plugin requires MongoDB v5 or later for time series collections.

[View](/telegraf/v1/output-plugins/mongodb/)

### MQTT Producer

Plugin ID: `outputs.mqtt`  
Telegraf v0.2.0+

This plugin writes metrics to a [MQTT broker](http://http://mqtt.org/) acting as a MQTT producer. The plugin supports the MQTT protocols `3.1.1` and `5`.

In v2.0.12+ of the mosquitto MQTT server, there is a [bug](https://github.com/eclipse/mosquitto/issues/2117) requiring the `keep_alive` value to be set non-zero in Telegraf. Otherwise, the server will return with `identifier rejected`. As a reference `eclipse/paho.golang` sets the `keep_alive` to 30.

[View](/telegraf/v1/output-plugins/mqtt/)

### NATS

Plugin ID: `outputs.nats`  
Telegraf v1.1.0+

This plugin writes metrics to subjects of a set of [NATS](https://nats.io) instances in one of the supported [data formats](/telegraf/v1/data_formats/output).

[View](/telegraf/v1/output-plugins/nats/)

### Nebius Cloud Monitoring

Plugin ID: `outputs.nebius_cloud_monitoring`  
Telegraf v1.27.0+

This plugin writes metrics to the [Nebuis Cloud Monitoring](https://nebius.com/il/services/monitoring) service.

[View](/telegraf/v1/output-plugins/nebius_cloud_monitoring/)

### New Relic

Plugin ID: `outputs.newrelic`  
Telegraf v1.15.0+

This plugins writes metrics to [New Relic Insights](https://newrelic.com) using the [Metrics API](https://docs.newrelic.com/docs/data-ingest-apis/get-data-new-relic/metric-api/introduction-metric-api). To use this plugin you have to obtain an [Insights API Key](https://docs.newrelic.com/docs/apis/get-started/intro-apis/types-new-relic-api-keys#user-api-key).

[View](/telegraf/v1/output-plugins/newrelic/)

### NSQ

Plugin ID: `outputs.nsq`  
Telegraf v0.2.1+

This plugin writes metrics to the given topic of a [NSQ](https://nsq.io) instance as a producer in one of the supported [data formats](/telegraf/v1/data_formats/output).

[View](/telegraf/v1/output-plugins/nsq/)

### OpenSearch

Plugin ID: `outputs.opensearch`  
Telegraf v1.29.0+

This plugin writes metrics to a [OpenSearch](https://opensearch.org/) instance via HTTP. It supports OpenSearch releases v1 and v2 but future comparability with 1.x is not guaranteed and instead will focus on 2.x support.

Consider using the existing Elasticsearch plugin for 1.x.

[View](/telegraf/v1/output-plugins/opensearch/)

### OpenTelemetry

Plugin ID: `outputs.opentelemetry`  
Telegraf v1.20.0+

This plugin writes metrics to [OpenTelemetry](https://opentelemetry.io) servers and agents via gRPC or HTTP.

[View](/telegraf/v1/output-plugins/opentelemetry/)

### OpenTSDB

Plugin ID: `outputs.opentsdb`  
Telegraf v0.1.9+

This plugin writes metrics to an [OpenTSDB](http://opentsdb.net/) instance using either the telnet or HTTP mode. Using the HTTP API is recommended since OpenTSDB 2.0.

[View](/telegraf/v1/output-plugins/opentsdb/)

### Parquet

Plugin ID: `outputs.parquet`  
Telegraf v1.32.0+

This plugin writes metrics to [parquet](https://parquet.apache.org) files. By default, metrics are grouped by metric name and written all to the same file.

If a metric schema does not match the schema in the file it will be dropped.

To lean more about the parquet format, check out the [parquet docs](https://parquet.apache.org/docs/) as well as a blog post on [querying parquet](https://www.influxdata.com/blog/querying-parquet-millisecond-latency/).

[View](/telegraf/v1/output-plugins/parquet/)

### PostgreSQL

Plugin ID: `outputs.postgresql`  
Telegraf v1.24.0+

This plugin writes metrics to a [PostgreSQL](https://www.postgresql.org/) (or compatible) server managing the schema and automatically updating missing columns.

[View](/telegraf/v1/output-plugins/postgresql/)

### Prometheus

Plugin ID: `outputs.prometheus_client`  
Telegraf v0.2.1+

This plugin starts a [Prometheus](https://prometheus.io) client and exposes the written metrics on a `/metrics` endpoint by default. This endpoint can then be polled by a Prometheus server.

[View](/telegraf/v1/output-plugins/prometheus_client/)

### Quix

Plugin ID: `outputs.quix`  
Telegraf v1.33.0+

This plugin writes metrics to a [Quix](https://quix.io) endpoint.

Please consult Quix’s [official documentation](https://quix.io/docs/) for more details on the Quix platform architecture and concepts.

[View](/telegraf/v1/output-plugins/quix/)

### Redis Time Series

Plugin ID: `outputs.redistimeseries`  
Telegraf v1.0.0+

This plugin writes metrics to a [Redis time-series](https://redis.io/timeseries) server.

[View](/telegraf/v1/output-plugins/redistimeseries/)

### Remote File

Plugin ID: `outputs.remotefile`  
Telegraf v1.32.0+

This plugin writes metrics to files in a remote location using the [rclone library](https://rclone.org). Currently the following backends are supported:

-   `local`: [Local filesystem](https://rclone.org/local/)
-   `s3`: [Amazon S3 storage providers](https://rclone.org/s3/)
-   `sftp`: [Secure File Transfer Protocol](https://rclone.org/sftp/)

[View](/telegraf/v1/output-plugins/remotefile/)

### Riemann

Plugin ID: `outputs.riemann`  
Telegraf v1.3.0+

This plugin writes metric to the [Riemann](http://riemann.io) serice via TCP or UDP.

[View](/telegraf/v1/output-plugins/riemann/)

### Sensu Go

Plugin ID: `outputs.sensu`  
Telegraf v1.18.0+

This plugin writes metrics to [Sensu Go](https://sensu.io) via its HTTP events API.

[View](/telegraf/v1/output-plugins/sensu/)

### SignalFx

Plugin ID: `outputs.signalfx`  
Telegraf v1.18.0+

This plugin writes metrics to [SignalFx](https://docs.signalfx.com/en/latest/).

[View](/telegraf/v1/output-plugins/signalfx/)

### Socket Writer

Plugin ID: `outputs.socket_writer`  
Telegraf v1.3.0+

This plugin writes metrics to a network service e.g. via UDP or TCP in one of the supported [data formats](/telegraf/v1/data_formats/output).

[View](/telegraf/v1/output-plugins/socket_writer/)

### SQL

Plugin ID: `outputs.sql`  
Telegraf v1.19.0+

This plugin writes metrics to a supported SQL database using a simple, hard-coded database schema. There is a table for each metric type with the table name corresponding to the metric name. There is a column per field and a column per tag with an optional column for the metric timestamp.

A row is written for every metric. This means multiple metrics are never merged into a single row, even if they have the same metric name, tags, and timestamp.

The plugin uses Golang’s generic “database/sql” interface and third party drivers. See the driver-specific section for a list of supported drivers and details.

[View](/telegraf/v1/output-plugins/sql/)

### Google Cloud Monitoring

Plugin ID: `outputs.stackdriver`  
Telegraf v1.9.0+

This plugin writes metrics to a `project` in [Google Cloud Monitoring](https://cloud.google.com/monitoring/api/v3/) (formerly called Stackdriver). [Authentication](https://cloud.google.com/docs/authentication/getting-started) with Google Cloud is required using either a service account or user credentials.

This plugin accesses APIs which are [chargeable](https://cloud.google.com/stackdriver/pricing#google-clouds-operations-suite-pricing) and might incur costs.

By default, Metrics are grouped by the `namespace` variable and metric key, eg: `custom.googleapis.com/telegraf/system/load5`. However, this is not the best practice. Setting `metric_name_format = "official"` will produce a more easily queried format of: `metric_type_prefix/[namespace_]name_key/kind`. If the global namespace is not set, it is omitted as well.

[View](/telegraf/v1/output-plugins/stackdriver/)

### ActiveMQ STOMP

Plugin ID: `outputs.stomp`  
Telegraf v1.24.0+

This plugin writes metrics to an [Active MQ Broker](http://activemq.apache.org/) for [STOMP](https://stomp.github.io) but also supports [Amazon MQ](https://aws.amazon.com/amazon-mq) brokers. Metrics can be written in one of the supported [data formats](/telegraf/v1/data_formats/output).

[View](/telegraf/v1/output-plugins/stomp/)

### Sumo Logic

Plugin ID: `outputs.sumologic`  
Telegraf v1.16.0+

This plugin writes metrics to a [Sumo Logic HTTP Source](https://help.sumologic.com/03Send-Data/Sources/02Sources-for-Hosted-Collectors/HTTP-Source/Upload-Metrics-to-an-HTTP-Source) using one of the following data formats:

-   `graphite` for Content-Type of `application/vnd.sumologic.graphite`
-   `carbon2` for Content-Type of `application/vnd.sumologic.carbon2`
-   `prometheus` for Content-Type of `application/vnd.sumologic.prometheus`

[View](/telegraf/v1/output-plugins/sumologic/)

### Syslog

Plugin ID: `outputs.syslog`  
Telegraf v1.11.0+

This plugin writes metrics as syslog messages via UDP in [RFC5426 format](https://tools.ietf.org/html/rfc5426) or via TCP in [RFC6587 format](https://tools.ietf.org/html/rfc6587) or via TLS in [RFC5425 format](https://tools.ietf.org/html/rfc5425), with or without the octet counting framing.

Syslog messages are formatted according to [RFC5424](https://tools.ietf.org/html/rfc5424) limiting the field sizes when sending messages according to the [syslog message format](https://datatracker.ietf.org/doc/html/rfc5424#section-6) section of the RFC. Sending messages beyond these sizes may get dropped by a strict receiver silently.

[View](/telegraf/v1/output-plugins/syslog/)

### Amazon Timestream

Plugin ID: `outputs.timestream`  
Telegraf v1.16.0+

This plugin writes metrics to the [Amazon Timestream](https://aws.amazon.com/timestream) service.

[View](/telegraf/v1/output-plugins/timestream/)

### Warp10

Plugin ID: `outputs.warp10`  
Telegraf v1.14.0+

This plugin writes metrics to the [Warp 10](https://www.warp10.io) service.

[View](/telegraf/v1/output-plugins/warp10/)

### Wavefront

Plugin ID: `outputs.wavefront`  
Telegraf v1.5.0+

This plugin writes metrics to a [Wavefront](https://www.wavefront.com) instance or a Wavefront Proxy instance over HTTP or HTTPS.

[View](/telegraf/v1/output-plugins/wavefront/)

### Websocket

Plugin ID: `outputs.websocket`  
Telegraf v1.19.0+

This plugin writes metrics to a WebSocket endpoint in one of the supported [data formats](/telegraf/v1/data_formats/output).

[View](/telegraf/v1/output-plugins/websocket/)

### Yandex Cloud Monitoring

Plugin ID: `outputs.yandex_cloud_monitoring`  
Telegraf v1.17.0+

This plugin writes metrics to the [Yandex Cloud Monitoring](https://cloud.yandex.com/services/monitoring) service.

[View](/telegraf/v1/output-plugins/yandex_cloud_monitoring/)

### Zabbix

Plugin ID: `outputs.zabbix`  
Telegraf v1.30.0+

This plugin writes metrics to [Zabbix](https://www.zabbix.com/) via [traps](https://www.zabbix.com/documentation/current/en/manual/appendix/items/trapper). It has been tested with versions v3.0, v4.0 and v6.0 but should work with newer versions of Zabbix as long as the protocol doesn’t change.

[View](/telegraf/v1/output-plugins/zabbix/)

## Aggregator plugins

Telegraf aggregator plugins create aggregate metrics (for example, mean, min, max, quantiles, etc.)

### Basic Statistics

Plugin ID: `aggregators.basicstats`  
Telegraf v1.5.0+

This plugin computes basic statistics such as counts, differences, minima, maxima, mean values, non-negative differences etc. for a set of metrics and emits these statistical values every `period`.

[View](/telegraf/v1/aggregator-plugins/basicstats/)

### Derivative

Plugin ID: `aggregators.derivative`  
Telegraf v1.18.0+

This plugin computes the derivative for all fields of the aggregated metrics.

[View](/telegraf/v1/aggregator-plugins/derivative/)

### Final

Plugin ID: `aggregators.final`  
Telegraf v1.11.0+

This plugin emits the last metric of a contiguous series, defined as a series which receives updates within the time period in `series_timeout`. The contiguous series may be longer than the time interval defined by `period`. When a series has not been updated within the `series_timeout`, the last metric is emitted.

Alternatively, the plugin emits the last metric in the `period` for the `periodic` output strategy.

This is useful for getting the final value for data sources that produce discrete time series such as procstat, cgroup, kubernetes etc. or to downsample metrics collected at a higher frequency.

All emited metrics do have fields with `_final` appended to the field-name by default.

[View](/telegraf/v1/aggregator-plugins/final/)

### Histogram

Plugin ID: `aggregators.histogram`  
Telegraf v1.4.0+

This plugin creates histograms containing the counts of field values within the configured range. The histogram metric is emitted every `period`.

In `cumulative` mode, values added to a bucket are also added to the consecutive buckets in the distribution creating a [cumulative histogram](https://en.wikipedia.org/wiki/Histogram#/media/File:Cumulative_vs_normal_histogram.svg).

By default bucket counts are not reset between periods and will be non-strictly increasing while Telegraf is running. This behavior can be by setting the `reset` parameter.

[View](/telegraf/v1/aggregator-plugins/histogram/)

### Merge

Plugin ID: `aggregators.merge`  
Telegraf v1.13.0+

This plugin merges metrics of the same series and timestamp into new metrics with the super-set of fields. A series here is defined by the metric name and the tag key-value set.

Use this plugin when fields are split over multiple metrics, with the same measurement, tag set and timestamp.

[View](/telegraf/v1/aggregator-plugins/merge/)

### Minimum-Maximum

Plugin ID: `aggregators.minmax`  
Telegraf v1.1.0+

This plugin aggregates the minimum and maximum values of each field it sees, emitting the aggrate every `period` seconds with field names suffixed by `_min` and `_max` respectively.

[View](/telegraf/v1/aggregator-plugins/minmax/)

### Quantile

Plugin ID: `aggregators.quantile`  
Telegraf v1.18.0+

This plugin aggregates each numeric field per metric into the specified quantiles and emits the quantiles every `period`. Different aggregation algorithms are supported with varying accuracy and limitations.

[View](/telegraf/v1/aggregator-plugins/quantile/)

### Starlark

Plugin ID: `aggregators.starlark`  
Telegraf v1.21.0+

This plugin allows to implement a custom aggregator plugin via a [Starlark](https://github.com/google/starlark-go) script.

The Starlark language is a dialect of Python and will be familiar to those who have experience with the Python language. However, there are major differences. Existing Python code is unlikely to work unmodified.

The execution environment is sandboxed, and it is not possible to access the local filesystem or perfoming network operations. This is by design of the Starlark language as a configuration language.

The Starlark script used by this plugin needs to be composed of the three methods defining an aggreagtor named `add`, `push` and `reset`.

The `add` method is called as soon as a new metric is added to the plugin the metrics to the aggregator. After `period`, the `push` method is called to output the resulting metrics and finally the aggregation is reset by using the `reset` method of the Starlark script.

The Starlark functions might use the global function `state` to keep aggregation information such as added metrics etc.

More details on the syntax and available functions can be found in the [Starlark specification](https://github.com/google/starlark-go/blob/d1966c6b9fcd/doc/spec.md).

[View](/telegraf/v1/aggregator-plugins/starlark/)

### Value Counter

Plugin ID: `aggregators.valuecounter`  
Telegraf v1.8.0+

This plugin counts the occurrence of unique values in fields and emits the counter once every `period` with the field-names being suffixed by the unique value converted to `string`.

The fields to be counted must be configured using the `fields` setting, otherwise no field will be counted and no metric is emitted.

This plugin is useful to e.g. count the occurrances of HTTP status codes or other categorical values in the defined `period`.

Counting fields with a high number of potential values may produce a significant amounts of new fields and results in an increased memory usage. Take care to only count fields with a limited set of values.

[View](/telegraf/v1/aggregator-plugins/valuecounter/)

## Processor plugins

Telegraf output plugins transform, decorate, and filter metrics.

### AWS EC2 Metadata

Plugin ID: `processors.aws_ec2`  
Telegraf v1.18.0+

This plugin appends metadata gathered from [AWS IMDS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) to metrics associated with EC2 instances.

[View](/telegraf/v1/processor-plugins/aws_ec2/)

### Batch

Plugin ID: `processors.batch`  
Telegraf v1.33.0+

This plugin groups metrics into batches by adding a batch tag. This is useful for parallel processing of metrics where downstream processors, aggregators or outputs can then select a batch using `tagpass` or `metricpass`.

Metrics are distributed across batches using the round-robin scheme.

[View](/telegraf/v1/processor-plugins/batch/)

### Clone

Plugin ID: `processors.clone`  
Telegraf v1.13.0+

This plugin creates a copy of each metric passing through it, preserving the original metric and allowing modifications such as [metric modifiers](/telegraf/v1/configuration/#modifiers) in the copied metric.

[Metric filtering](/telegraf/v1/configuration/#metric-filtering) options apply to both the clone and the original metric.

[View](/telegraf/v1/processor-plugins/clone/)

### Converter

Plugin ID: `processors.converter`  
Telegraf v1.7.0+

This plugin allows transforming tags into fields or timestamps, and converting fields into tags or timestamps. The plugin furthermore allows to change the field type.

When converting tags to fields, take care to ensure the series is still uniquely identifiable. Fields with the same series key (measurement + tags) will overwrite one another.

[View](/telegraf/v1/processor-plugins/converter/)

### Cumulative Sum

Plugin ID: `processors.cumulative_sum`  
Telegraf v1.35.0+

This plugin accumulates field values per-metric over time and emit metrics with cumulative sums whenever a metric is updated. This is useful when using outputs relying on monotonically increasing values

Metrics within a series are accumulated in the **order of arrival** and not in order of their timestamps!

[View](/telegraf/v1/processor-plugins/cumulative_sum/)

### Date

Plugin ID: `processors.date`  
Telegraf v1.12.0+

This plugin adds the metric timestamp as a human readable tag. A common use is to add a tag that can be used to group by month or year.

[View](/telegraf/v1/processor-plugins/date/)

### Dedup

Plugin ID: `processors.dedup`  
Telegraf v1.14.0+

This plugin filters metrics whose field values are exact repetitions of the previous values. This plugin will store its state between runs if the `statefile` option in the agent config section is set.

[View](/telegraf/v1/processor-plugins/dedup/)

### Defaults

Plugin ID: `processors.defaults`  
Telegraf v1.15.0+

This plugin allows to specify default values for fields and tags for cases where the tag or field does not exist or has an empty value.

[View](/telegraf/v1/processor-plugins/defaults/)

### Enum

Plugin ID: `processors.enum`  
Telegraf v1.8.0+

This plugin allows the mapping of field or tag values according to the configured enumeration. The main use-case is to rewrite numerical values into human-readable values or vice versa. Default mappings can be configured to be used for all remaining values.

[View](/telegraf/v1/processor-plugins/enum/)

### Execd

Plugin ID: `processors.execd`  
Telegraf v1.15.0+

This plugin runs an external program as a separate process and pipes metrics in to the process’s `stdin` and reads processed metrics from its `stdout`. Program output on `stderr` is logged.

[View](/telegraf/v1/processor-plugins/execd/)

### Filepath

Plugin ID: `processors.filepath`  
Telegraf v1.15.0+

This plugin allows transforming a path, using e.g. basename to extract the last path element, for tag and field values. Values can be modified in place or stored in another key.

[View](/telegraf/v1/processor-plugins/filepath/)

### Filter

Plugin ID: `processors.filter`  
Telegraf v1.29.0+

This plugin allows specifying a set of rules for metrics with the ability to *keep* or *drop* those metrics. It does *not* modify the metric. As such a user might want to apply this processor to remove metrics from the processing/output stream.

The filtering is *not* output specific, but will apply to the metrics processed by this processor.

[View](/telegraf/v1/processor-plugins/filter/)

### Network Interface Name

Plugin ID: `processors.ifname`  
Telegraf v1.15.0+

This plugin looks up network interface names using SNMP.

[View](/telegraf/v1/processor-plugins/ifname/)

### Lookup

Plugin ID: `processors.lookup`  
Telegraf v1.15.0+

This plugin allows to use one or more files containing lookup-tables for annotating incoming metrics. The lookup is *static* as the files are only used on startup. The main use-case for this is to annotate metrics with additional tags e.g. dependent on their source. Multiple tags can be added depending on the lookup-table *files*.

The lookup key can be generated using a Golang template with the ability to access the metric name via `{{.Name}}`, the tag values via `{{.Tag "mytag"}}`, with `mytag` being the tag-name and field-values via `{{.Field "myfield"}}`, with `myfield` being the field-name. Non-existing tags and field will result in an empty string or `nil` respectively. In case the key cannot be found, the metric is passed-through unchanged. By default all matching tags are added and existing tag-values are overwritten.

The plugin only supports the addition of tags and thus all mapped tag-values need to be strings!

[View](/telegraf/v1/processor-plugins/lookup/)

### Noise

Plugin ID: `processors.noise`  
Telegraf v1.22.0+

This plugin is used to add noise to numerical field values. For each field a noise is generated using a defined probability density function and added to the value. The function type can be configured as *Laplace*, *Gaussian* or *Uniform*.

[View](/telegraf/v1/processor-plugins/noise/)

### Override

Plugin ID: `processors.override`  
Telegraf v1.6.0+

This plugin allows to modify metrics using [metric modifiers](/telegraf/v1/configuration/#modifiers). Use-cases of this plugin encompass ensuring certain tags or naming conventions are adhered to irrespective of input plugin configurations, e.g. by `taginclude`.

[Metric filtering](/telegraf/v1/configuration/#metric-filtering) options apply to both the clone and the original metric.

[View](/telegraf/v1/processor-plugins/override/)

### Parser

Plugin ID: `processors.parser`  
Telegraf v1.8.0+

This plugin parses defined fields or tags containing the specified [data format](/telegraf/v1/data_formats/input) and creates new metrics based on the resulting fields and tags.

[View](/telegraf/v1/processor-plugins/parser/)

### Pivot

Plugin ID: `processors.pivot`  
Telegraf v1.12.0+

This plugin rotates single-valued metrics into a multi-field metric. The result is a more compact representation for applying mathematical operators to or do comparisons between metrics or flatten fields.

To perform the reverse operation use the [unpivot](/telegraf/v1/plugins/#processor-unpivot) processor.

[View](/telegraf/v1/processor-plugins/pivot/)

### Port Name Lookup

Plugin ID: `processors.port_name`  
Telegraf v1.15.0+

This plugin allows converting a tag or field containing a well-known port, either a number (e.g. `80`) for TCP ports or a port and protocol (e.g. `443/tcp`), to the registered service name.

[View](/telegraf/v1/processor-plugins/port_name/)

### Printer

Plugin ID: `processors.printer`  
Telegraf v1.1.0+

This plugin prints every metric passing through it to the standard output.

[View](/telegraf/v1/processor-plugins/printer/)

### Regex

Plugin ID: `processors.regex`  
Telegraf v1.7.0+

This plugin transforms tag and field *values* as well as renaming tags, fields and metrics using regular expression patterns. Tag and field *values* can be transformed using named-groups in a batch fashion.

The regex processor **only operates on string fields**. It will not work on any other data types, like an integer or float.

[View](/telegraf/v1/processor-plugins/regex/)

### Rename

Plugin ID: `processors.rename`  
Telegraf v1.8.0+

This plugin allows to rename measurements, fields and tags.

[View](/telegraf/v1/processor-plugins/rename/)

### Reverse DNS

Plugin ID: `processors.reverse_dns`  
Telegraf v1.15.0+

This plugin does a reverse-dns lookup on tags or fields containing IPs and creates a tag or field containing the corresponding DNS name.

[View](/telegraf/v1/processor-plugins/reverse_dns/)

### Round

Plugin ID: `processors.round`  
Telegraf v1.36.0+

This plugin allows to round numerical field values to the configured precision. This is particularly useful in combination with the [dedup processor](/telegraf/v1/plugins/#processor-dedup) to reduce the number of metrics sent to the output if only a lower precision is required for the values.

[View](/telegraf/v1/processor-plugins/round/)

### S2 Geo

Plugin ID: `processors.s2geo`  
Telegraf v1.14.0+

This plugin uses the WGS-84 coordinates in decimal degrees specified in the latitude and longitude fields and adds a tag with the corresponding S2 cell ID token of specified [cell level](https://s2geometry.io/resources/s2cell_statistics.html).

[View](/telegraf/v1/processor-plugins/s2geo/)

### Scale

Plugin ID: `processors.scale`  
Telegraf v1.27.0+

This plugin allows to scale field-values from an input range into the given output range according to this formula:

Alternatively, you can apply a factor and offset to the input according to this formula

Input fields are converted to floating point values if possible. Otherwise, fields that cannot be converted are ignored and keep their original value.

Neither the input nor output values are clipped to their respective ranges!

[View](/telegraf/v1/processor-plugins/scale/)

### SNMP Lookup

Plugin ID: `processors.snmp_lookup`  
Telegraf v1.30.0+

This plugin looks up extra information via SNMP and adds it to the metric as tags.

[View](/telegraf/v1/processor-plugins/snmp_lookup/)

### Split

Plugin ID: `processors.split`  
Telegraf v1.28.0+

This plugin splits a metric up into one or more metrics based on a configured template. The resulting metrics will be timestamped according to the source metric. Templates can overlap, where a field or tag, is used across templates and as a result end up in multiple metrics.

If drop original is changed to true, then the plugin can result in dropping all metrics when no match is found! Please ensure to test templates before putting into production *and* use metric filtering to avoid data loss.

[View](/telegraf/v1/processor-plugins/split/)

### Starlark

Plugin ID: `processors.starlark`  
Telegraf v1.15.0+

This plugin calls the provided Starlark function for each matched metric, allowing for custom programmatic metric processing.

The Starlark language is a dialect of Python, and will be familiar to those who have experience with the Python language. However, there are major differences. Existing Python code is unlikely to work unmodified. The execution environment is sandboxed, and it is not possible to do I/O operations such as reading from files or sockets.

The **[Starlark specification](https://github.com/google/starlark-go/blob/d1966c6b9fcd/doc/spec.md)** has details about the syntax and available functions.

[View](/telegraf/v1/processor-plugins/starlark/)

### Strings

Plugin ID: `processors.strings`  
Telegraf v1.8.0+

This plugin allows to manipulate strings in the measurement name, tag and field values using different functions.

[View](/telegraf/v1/processor-plugins/strings/)

### Tag Limit

Plugin ID: `processors.tag_limit`  
Telegraf v1.12.0+

This plugin ensures that only a certain number of tags are preserved for any given metric, and to choose the tags to preserve when the number of tags appended by the data source is over the limit.

This can be useful when dealing with output systems (e.g. Stackdriver) that impose hard limits on the number of tags/labels per metric or where high levels of cardinality are computationally and/or financially expensive.

[View](/telegraf/v1/processor-plugins/tag_limit/)

### Template

Plugin ID: `processors.template`  
Telegraf v1.14.0+

This plugin applies templates to metrics for generating a new tag. The primary use case of this plugin is to create a tag that can be used for dynamic routing to multiple output plugins or using an output specific routing option.

The template has access to each metric’s measurement name, tags, fields, and timestamp. Templates follow the [Go Template syntax](https://golang.org/pkg/text/template/) and may contain [Sprig functions](http://masterminds.github.io/sprig/).

[View](/telegraf/v1/processor-plugins/template/)

### Timestamp

Plugin ID: `processors.timestamp`  
Telegraf v1.31.0+

This plugin allows to parse fields containing timestamps into timestamps of other format.

[View](/telegraf/v1/processor-plugins/timestamp/)

### TopK

Plugin ID: `processors.topk`  
Telegraf v1.7.0+

This plugin filters the top series over a period of time and calculates the top metrics via different aggregation functions. The processing steps comprise grouping the metrics based on the metric name and tags, computing the aggregate functions for each group every period and outputting the top `K` groups.

[View](/telegraf/v1/processor-plugins/topk/)

### Unpivot

Plugin ID: `processors.unpivot`  
Telegraf v1.12.0+

This plugin allows to rotate a multi-field series into single-valued metrics. The resulting metrics allow to more easily aggregate data across fields.

To perform the reverse operation use the [pivot](/telegraf/v1/plugins/#processor-pivot) processor.

[View](/telegraf/v1/processor-plugins/unpivot/)
