---
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: 38388
product: Telegraf Controller
version: v1
publisher: InfluxData
canonical: https://docs.influxdata.com/telegraf/v1/plugins/
date: '2026-06-11T17:00:50+02:00'
lastmod: '2026-06-11T17:00:50+02:00'
---

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
* Secretstore

##### 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)
* [Secret store plugins](#secret-store-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.

> [!Caution]
> 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).

> [!Note]
> 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.

> [!Important]
> 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.

> [!Important]
> 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+.

> [!Note]
> 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).

> [!Note]
> 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).

> [!Important]
> 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/).

> [!Warning]
> 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.

> [!Note]
> 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.

> [!Note]
> 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).

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Important]
> 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.

> [!Note]
> 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.

> [!Important]
> 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.

> [!Important]
> 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.

> [!Note]
> 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.

> [!Important]
> 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.

> [!Note]
> 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).

> [!Tip]
> 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.

> [!Note]
> 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.

> [!Important]
> 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 [FRITZ!](https://fritz.com/)devices (routers, repeaters, etc) using the device’s[TR-064](https://fritz.com/en/pages/interfaces) 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).

> [!Note]
> 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/)

### gNMI (gRPC Network Management Interface) dial-out

Plugin ID: `inputs.gnmi_listener`  
Telegraf v1.39.0+

This plugin consumes telemetry data based on[gNMI](https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-specification.md)messages sent by network devices in dial-out mode. This plugin supports a
list of vendor protocols such as [Nokia dial-out
telemetry](https://infocenter.nokia.com/public/7750SR222R1A/index.jsp?topic=%2Fcom.nokia.System_Mgmt_Guide%2Fdial-out_teleme-ai9exj5ye3.html).

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

### 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.

> [!Note]
> 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.

> [!Important]
> 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).

> [!Tip]
> 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).

> [!Note]
> 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.

> [!Tip]
> 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.

> [!Note]
> 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.

> [!Important]
> 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.

> [!Note]
> 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.

> [!Important]
> 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.

> [!Note]
> 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.

> [!Important]
> 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, …).

> [!Important]
> 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.

> [!Important]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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).

> [!Note]
> 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.

> [!Note]
> 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.

> [!Warning]
> 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.

> [!Tip]
> 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.

> [!Note]
> 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.

> [!Note]
> 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/).

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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).

> [!Note]
> > [!Note]
> 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.

> [!Important]
> 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).

> [!Important]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Caution]
> 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.

> [!Note]
> 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.

> [!Important]
> 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.

> [!Tip]
> 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.

> [!Warning]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Tip]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.)

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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).

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> > [!Note]
> 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).

> [!Note]
> 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.

> [!Note]
> 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/).

> [!Important]
> 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).

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Important]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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).

> [!Note]
> 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.

> [!Important]
> 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).

> [!Note]
> 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.

> [!Important]
> 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.

> [!Important]
> 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.

> [!Note]
> 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).

> [!Note]
> 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.

> [!Tip]
> 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.

> [!Important]
> 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.

> [!Note]
> 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`.

> [!Note]
> 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.

> [!Tip]
> 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.

> [!Important]
> 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.

> [!Important]
> 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.

> [!Important]
> 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.

> [!Note]
> 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).

> [!Note]
> 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.

> [!Note]
> 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`.

> [!Note]
> 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`.

> [!Important]
> 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.

> [!Note]
> > [!Note]
> [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.

> [!Important]
> 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

> [!Note]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Tip]
> 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.

> [!Note]
> 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.

> [!Note]
> 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.

> [!Tip]
> To perform the reverse operation use the[pivot](/telegraf/v1/plugins/#processor-pivot) processor.

[View](/telegraf/v1/processor-plugins/unpivot/)

## Secret store plugins

Telegraf secret store plugins provide secrets like usernames, passwords or
tokens to other plugins.

### Docker

Plugin ID: `secretstores.docker`  
Telegraf v1.27.0+

This plugin allows to access [Docker
secrets](https://docs.docker.com/engine/swarm/secrets/) mounted by the
engine during container runtime. The secrets are accessible as files
under `/run/secrets` from within the container.

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

### GoogleCloud Credentials

Plugin ID: `secretstores.googlecloud`  
Telegraf v1.37.0+

This plugin allows to retrieve token-based [Google Cloud
Credentials](https://docs.cloud.google.com/docs/authentication).

[View](/telegraf/v1/secretstore-plugins/googlecloud/)

### HTTP Secret store

Plugin ID: `secretstores.http`  
Telegraf v1.27.0+

This plugin allows to query secrets from an HTTP endpoint, transmitting
the secrets either plain-text or in an encrypted fashion.

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

### Javascript Object Signing and Encryption

Plugin ID: `secretstores.jose`  
Telegraf v1.25.0+

This plugin allows to read local secrets from files protected by the[Javascript Object Signing and
Encryption](https://github.com/dvsekhvalnov/jose2go) algorithm.

[View](/telegraf/v1/secretstore-plugins/jose/)

### OAuth2

Plugin ID: `secretstores.oauth2`  
Telegraf v1.28.0+

This plugin allows to retrieve and maintain secrets from various OAuth2
services such as [Auth0](https://auth0.com),[AzureAD](https://azure.microsoft.com/en/products/active-directory) or
others (see Configuration section. Expired tokens will be renewed
automatically for allowing plugins referencing those tokens to perform
their API calls without hassle.

> [!Note]
> This plugin only supports the *2-legged client credentials* flow.

[View](/telegraf/v1/secretstore-plugins/oauth2/)

### OS

Plugin ID: `secretstores.os`  
Telegraf v1.25.0+

This plugin allows to read and manage secrets using the native Operating
System keyring. For Windows this plugin uses the [credential
manager](https://support.microsoft.com/windows/credential-manager-in-windows-1b5c916a-6a16-889f-8581-fc16e8165ac0),
on Linux the [kernel
keyring](https://docs.kernel.org/security/keys/core.html) is used and on
MacOS we use the[Keychain](https://support.apple.com/guide/keychain-access/kyca1083/mac)implementation.

[View](/telegraf/v1/secretstore-plugins/os/)

### Systemd

Plugin ID: `secretstores.systemd`  
Telegraf v1.29.0+

This plugin allows utilizing credentials and secrets provided to the
Telegraf service by[systemd](https://www.freedesktop.org/wiki/Software/systemd/). Systemd
ensures that only the intended service can access the credentials for the
lifetime of this service. The credentials appear as plaintext files to
the consuming service but are stored encrypted on the host system. This
encryption can also use TPM2 protection if available (see [this
article](https://systemd.io/CREDENTIALS) for details).

This plugin does not support setting the credentials. See the credentials
management section below for how to setup systemd credentials and how to
add credentials

> [!Note]
> This plugin requires systemd version 250+.

[View](/telegraf/v1/secretstore-plugins/systemd/)

### HashiCorp Vault

Plugin ID: `secretstores.vault`  
Telegraf v1.37.0+

This plugin allows to access secrets provided by a [HashiCorp
Vault](https://www.hashicorp.com/en/products/vault) server via the Vault
API. It supports authentication via a pre-obtained token or via the`AppRole` method.

[View](/telegraf/v1/secretstore-plugins/vault/)
