docs-v2/data/telegraf_plugins.yml

3135 lines
119 KiB
YAML
Raw Permalink Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

############## %%%%%% %% %% %%%%% %% %% %%%%%% %%%% ##############
############## %% %%% %% %% %% %% %% %% %% ##############
############## %% %% %%% %%%%% %% %% %% %%%% ##############
############## %% %% %% %% %% %% %% %% ##############
############## %%%%%% %% %% %% %%%% %% %%%% ##############
input:
- name: AMQP Consumer
id: amqp_consumer
description: |
The AMQP Consumer input plugin provides a consumer for use with AMQP 0-9-1,
a prominent implementation of this protocol
being RabbitMQ.
introduced: 1.3.0
tags: [linux, macos, windows, messaging]
- name: ActiveMQ
id: activemq
description: |
The ActiveMQ input plugin gathers queues, topics, and subscriber metrics
using the ActiveMQ Console API.
introduced: 1.8.0
tags: [linux, macos, windows, messaging]
- name: Aerospike
id: aerospike
description: |
**Deprecated in favor of the [Prometheus plugin](https://github.com/influxdata/telegraf/blob/master/plugins/inputs/prometheus/README.md)
with the Aerospike Prometheus Exporter.**
The Aerospike input plugin queries Aerospike servers and gets node statistics
and statistics for all configured namespaces.
introduced: 0.2.0
deprecated: 1.30.0
tags: [linux, macos, windows, data-stores]
- name: Alibaba CloudMonitor Service (Aliyun)
id: aliyuncms
description: |
This plugin pulls metric statistics from Aliyun CMS.
introduced: 1.19.0
tags: [cloud]
- name: Amazon CloudWatch Alarms
id: awsalarms
description: |
The Amazon CloudWatch Alarms input plugin pulls alarm statistics from Amazon CloudWatch.
introduced: 1.16.0
link: https://github.com/vipinvkmenon/awsalarms/blob/master/README.MD
tags: [linux, macos, windows, cloud, external]
external: true
- name: Amazon CloudWatch Statistics
id: cloudwatch
description: |
The Amazon CloudWatch Statistics input plugin pulls metric statistics from Amazon CloudWatch.
introduced: 0.12.1
tags: [linux, macos, windows, cloud]
- name: Amazon ECS
id: ecs
description: |
Amazon ECS input plugin (AWS Fargate compatible) uses the Amazon ECS v2 metadata and stats API endpoints to gather stats on running containers in a task.
The Telegraf container and the workload that Telegraf is inspecting must be run in the same task. This is similar to (and reuses pieces of) the
Docker input plugin, with some ECS-specific modifications for AWS metadata and stats formats.
introduced: 1.11.0
tags: [linux, macos, windows, cloud, containers]
- name: Amazon Kinesis Consumer
id: kinesis_consumer
description: |
The Amazon Kinesis Consumer input plugin reads from a Kinesis data stream and creates
metrics using one of the supported [input data formats](/telegraf/v1/data_formats/input).
introduced: 1.10.0
tags: [linux, macos, windows, cloud, messaging, external]
external: true
- name: Apache Aurora
id: aurora
description: |
The Aurora input plugin gathers metrics from [Apache Aurora](https://aurora.apache.org/) schedulers.
For monitoring recommendations, see [Monitoring your Aurora cluster](https://aurora.apache.org/documentation/latest/operations/monitoring/).
introduced: 1.7.0
tags: [linux, macos, windows, applications, containers]
- name: Apache HTTP Server
id: apache
description: |
The Apache HTTP Server input plugin collects server performance information
using the `mod_status` module of the Apache HTTP Server.
Typically, the `mod_status` module is configured to expose a page at the
`/server-status?auto` location of the Apache server.
The [ExtendedStatus](https://httpd.apache.org/docs/2.4/mod/core.html#extendedstatus)
option must be enabled in order to collect all available fields.
For information about how to configure your server reference, see the
[module documentation](https://httpd.apache.org/docs/2.4/mod/mod_status.html#enable).
introduced: 1.8.0
tags: [linux, macos, windows, servers, web]
- name: Apache Kafka Consumer
id: kafka_consumer
description: |
The Apache Kafka Consumer input plugin polls a specified Kafka topic and adds messages to InfluxDB.
Messages are expected in the line protocol format.
[Consumer Group](http://godoc.org/github.com/wvanbergen/kafka/consumergroup)
is used to talk to the Kafka cluster so multiple instances of Telegraf can read
from the same topic in parallel.
introduced: 0.2.3
tags: [linux, macos, windows, messaging]
- name: Apache Mesos
id: mesos
description: |
The Apache Mesos input plugin gathers metrics from Mesos. For more information, please check the
[Mesos Observability Metrics](http://mesos.apache.org/documentation/latest/monitoring/) page.
introduced: 0.10.3
tags: [linux, macos, windows, containers]
- name: Apache Solr
id: solr
description: |
The Apache Solr input plugin collects stats using the MBean Request Handler.
introduced: 1.5.0
tags: [linux, macos, windows, data-stores]
- name: Apache Tomcat
id: tomcat
description: |
The Apache Tomcat input plugin collects statistics available from the Apache
Tomcat manager status page (`http://<host>/manager/status/all?XML=true`).
Using `XML=true` returns XML data.
See the [Apache Tomcat documentation](https://tomcat.apache.org/tomcat-9.0-doc/manager-howto.html#Server_Status)
for details on these statistics.
introduced: 1.4.0
tags: [linux, macos, windows, servers, web]
- name: Apache Zipkin
id: zipkin
description: |
The Apache Zipkin input plugin implements the Zipkin HTTP server to gather trace
and timing data needed to troubleshoot latency problems in microservice architectures.
> This plugin is experimental. Its data schema may be subject to change based on
> its main usage cases and the evolution of the OpenTracing standard.
introduced: 1.4.0
tags: [linux, macos, windows, networking]
- name: Apache Zookeeper
id: zookeeper
description: |
The Apache Zookeeper input plugin collects variables output from the `mntr`
command [Zookeeper Admin](https://zookeeper.apache.org/doc/current/zookeeperAdmin.html).
introduced: 0.2.0
tags: [linux, macos, windows, build-deploy]
- name: Apcupsd
id: apcupsd
description: |
The Apcupsd input plugin reads data from an apcupsd daemon over its NIS network protocol.
introduced: 1.12.0
tags: [linux, macos, windows, systems]
- name: APT
id: telegraf-apt
description: |
The APT input plugin checks Debian for package updates.
link: https://github.com/x70b1/telegraf-apt/blob/master/README.md
introduced: 1.21.4
tags: [debian, ubuntu, external]
external: true
- name: Arista LANZ Consumer
id: lanz
description: |
The Arista LANZ Consumer input plugin provides a consumer for use with Arista Networks Latency Analyzer (LANZ).
Metrics are read from a stream of data via TCP through port 50001 on the switch's management IP. Data is in Protobuffers format.
For more information, see [Arista LANZ](https://www.arista.com/en/um-eos/eos-latency-analyzer-lanz).
introduced: 1.14.0
tags: [linux, macos, windows, networking]
- name: AWS CloudWatch Metric Streams
id: cloudwatch_metric_streams
description: |
The CloudWatch Metric Streams plugin is a service input plugin that listens for metrics sent via HTTP and performs the required processing for metric streams from AWS.
introduced: 1.24.0
tags: [linux, macos, windows, aws]
- name: Azure Monitor
id: azure_monitor
description: |
The Azure Monitor plugin gathers metrics from Azure Monitor API.
introduced: 1.25.0
tags: [linux, macos, windows, systems, cloud]
- name: Azure Storage Queue
id: azure_storage_queue
description: |
The Azure Storage Queue plugin gathers sizes of Azure Storage Queues.
introduced: 1.13.0
tags: [linux, macos, windows, systems, cloud]
- name: Bcache
id: bcache
description: |
The Bcache input plugin gets bcache statistics from the `stats_total` directory and `dirty_data` file.
introduced: 0.2.0
tags: [linux, macos, windows, systems]
- name: Beat
id: beat
description: |
The Beat input plugin collects metrics from the given Elastic Beat instances.
introduced: 1.18.0
tags: [linux, macos, windows, applications]
- name: Beanstalkd
id: beanstalkd
description: |
The Beanstalkd input plugin collects server stats as well as tube stats
(reported by `stats` and `stats-tube` commands respectively).
introduced: 1.8.0
tags: [linux, macos, windows, messaging]
- name: Big Blue Button
id: bigbluebutton
description: |
The BigBlueButton Input Plugin gathers metrics from a BigBlueButton server.
introduced: 1.19.0
link: https://github.com/SLedunois/bigbluebutton-telegraf-plugin/blob/main/README.md
tags: [external]
external: true
- name: BIND 9 Nameserver Statistics
id: bind
description: |
plugin decodes the JSON or XML statistics provided by BIND 9 nameservers.
introduced: 1.11.0
tags: [linux, macos, windows, netoworking]
- name: Bond
id: bond
description: |
The Bond input plugin collects network bond interface status, bond's slaves
interfaces status and failures count of bond's slaves interfaces.
The plugin collects these metrics from `/proc/net/bonding/*` files.
introduced: 1.5.0
tags: [linux, macos, windows, networking]
- name: Burrow
id: burrow
description: |
The Burrow input plugin collects Apache Kafka topic, consumer, and partition
status using the [Burrow](https://github.com/linkedin/Burrow)
[HTTP Endpoint](https://github.com/linkedin/Burrow/wiki/HTTP-Endpoint).
introduced: 1.7.0
tags: [linux, macos, windows, messaging]
- name: Ceph Storage
id: ceph
description: |
The Ceph Storage input plugin collects performance metrics from the MON and OSD nodes in a Ceph storage cluster.
introduced: 0.13.1
tags: [linux, macos, windows, data-stores]
- name: CGroup
id: cgroup
description: |
The CGroup input plugin captures specific statistics per cgroup.
introduced: 1.0.0
tags: [linux, macos, windows, systems]
- name: Chrony
id: chrony
description: |
The Chrony input plugin gets standard chrony metrics, requires chronyc executable.
introduced: 0.13.1
tags: [linux, macos, windows, networking, systems]
- name: Cisco GNMI Telemetry
id: cisco_telemetry_gnmi
description: |
> The `inputs.cisco_telemetry_gnmi` plugin was renamed to `inputs.gmni`
in **Telegraf 1.15.0** to better reflect its general support for gNMI devices.
See the [gNMI plugin](#input-cisco_telemetry_gnmi).
Cisco GNMI Telemetry input plugin consumes telemetry data similar to the GNMI specification.
This GRPC-based protocol can utilize TLS for authentication and encryption.
This plugin has been developed to support GNMI telemetry as produced by Cisco IOS XR (64-bit) version 6.5.1 and later.
introduced: 1.11.0
deprecated: 1.14.5
link: https://github.com/influxdata/telegraf/tree/release-1.14/plugins/inputs/cisco_telemetry_gnmi
tags: [linux, macos, windows, applications]
- name: Cisco Model-driven Telemetry (MDT)
id: cisco_telemetry_mdt
description: |
Cisco model-driven telemetry (MDT) is an input plugin that consumes telemetry data from Cisco IOS XR, IOS XE and NX-OS platforms.
It supports TCP & GRPC dialout transports. GRPC-based transport can utilize TLS for authentication and encryption.
Telemetry data is expected to be GPB-KV (self-describing-gpb) encoded.
introduced: 1.11.0
tags: [linux, macos, windows, applications]
- name: ClickHouse
id: clickhouse
description: |
The ClickHouse input plugin gathers statistics from a [ClickHouse](https://github.com/ClickHouse/ClickHouse) server, an open source
column-oriented database management system that lets you generate analytical data reports in real time.
introduced: 1.14.0
tags: [linux, macos, windows, servers, systems]
- name: Conntrack
id: conntrack
description: |
The Conntrack input plugin collects stats from Netfilter's conntrack-tools.
The conntrack-tools provide a mechanism for tracking various aspects of
network connections as they are processed by netfilter.
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_`.
This plugin reads the files specified in its configuration and publishes each one as a field,
with the prefix normalized to `ip_`.
introduced: 1.0.0
tags: [linux, macos, windows, networking]
- name: Consul
id: consul
description: |
The Consul input plugin will collect statistics about all health checks registered in the Consul.
It uses Consul API to query the data.
It will not report the telemetry but Consul can report those stats already using StatsD protocol, if needed.
introduced: 1.0.0
tags: [linux, macos, windows, build-deploy, containers]
- name: Couchbase
id: couchbase
description: |
The Couchbase input plugin reads per-node and per-bucket metrics from Couchbase.
introduced: 0.12.0
tags: [linux, macos, windows, data-stores]
- name: CouchDB
id: couchdb
description: |
The CouchDB input plugin gathers metrics of CouchDB using `_stats` endpoint.
introduced: 0.10.3
tags: [linux, macos, windows, data-stores]
- name: CPU
id: cpu
description: |
The CPU input plugin gathers metrics about cpu usage.
introduced: 0.1.5
tags: [linux, macos, windows, systems]
- name: CS:GO
id: csgo
description: |
The CSGO input plugin gahers metrics from Counter-Strike: Global Offensive servers.
introduced: 1.18.0
tags: [linux, macos, windows, web, servers]
- name: ctrlX Data Layer
id: ctrlx_datalayer
description: |
Gather data from communication middleware running on ctrlX CORE devices
introduced: 1.27.0
tags: [linux, macos, windows, messaging]
- name: Disk
id: disk
description: |
The Disk input plugin gathers metrics about disk usage by mount point.
introduced: 0.1.1
tags: [linux, macos, windows, systems]
- name: DiskIO
id: diskio
description: |
The DiskIO input plugin gathers metrics about disk IO by device.
introduced: 0.10.0
tags: [linux, macos, windows, systems]
- name: Directory Monitoring
id: directory_monitor
description: |
The Directory Monitoring input plugin monitors a single directory and takes in each file placed in the directory. The plugin gathers all files in the directory at a configurable interval, and parses the ones that haven't been picked up yet.
introduced: 1.18.0
tags: [linux, macos, windows, systems]
- name: Disque
id: disque
description: |
The Disque input plugin gathers metrics from one or more [Disque](https://github.com/antirez/disque) servers.
introduced: 0.10.0
tags: [linux, macos, windows, messaging]
- name: DMCache
id: dmcache
description: |
The DMCache input plugin provides a native collection for dmsetup-based statistics for dm-cache.
introduced: 1.3.0
tags: [linux, macos, windows, systems]
- name: DNS Query
id: dns_query
description: |
The DNS Query input plugin gathers DNS query times in milliseconds -
like [Dig](https://en.wikipedia.org/wiki/Dig_(command)).
introduced: 1.4.0
tags: [linux, macos, windows, networking]
- name: dnsmasq
id: dnsmasq
description: |
This plugin gathers dnsmasq statistics on the DNS side.
introduced: 1.19.0
link: https://github.com/machinly/dnsmasq-telegraf-plugin/blob/main/README.md
tags: [external]
external: true
- name: Docker
id: docker
description: |
The Docker input plugin uses the Docker Engine API to gather metrics on running Docker containers.
The Docker plugin uses the [Official Docker Client](https://github.com/moby/moby/tree/master/client)
to gather stats from the [Engine API](https://docs.docker.com/engine/api/v1.20/) library documentation.
introduced: 0.1.9
tags: [linux, macos, windows, build-deploy, containers]
- name: Docker Log
id: docker_log
description: |
The Docker Log input plugin uses the Docker Engine API to collect logs from running Docker containers.
The plugin uses the [Official Docker Client](https://github.com/moby/moby/tree/master/client)
to gather logs from the [Engine API](https://docs.docker.com/engine/api/v1.24/).
> This plugin works only for containers with the local or `json-file` or `journald` logging driver.
introduced: 1.12.0
tags: [linux, macos, windows, build-deploy, containers, logging]
- name: Dovecot
id: dovecot
description: |
The Dovecot input plugin uses the dovecot Stats protocol to gather metrics on configured domains.
For more information, see the [Dovecot documentation](http://wiki2.dovecot.org/Statistics).
introduced: 0.10.3
tags: [linux, macos, windows, applications, web]
- name: 389 Directory Server Input Plugin
id: ds389
description: |
This plugin gathers metrics from 389 Directory Servers' cn=Monitor backend.
introduced: 1.19.0
link: https://github.com/falon/CSI-telegraf-plugins/blob/master/plugins/inputs/ds389/README.md
tags: [external]
external: true
- name: Elasticsearch
id: elasticsearch
description: |
The Elasticsearch input plugin queries endpoints to obtain [node](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)
or [cluster-stats](https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-stats.html) metrics.
introduced: 0.1.5
tags: [linux, macos, windows, data-stores]
- name: Elasticsearch Query
id: elasticsearch_query
description: |
This elasticsearch query plugin queries endpoints to obtain metrics from data stored in an Elasticsearch cluster.
introduced: 1.20.0
tags: [linux, macos, windows, data-stores]
- name: Ethtool
id: ethtool
description: |
The Ethtool plugin gathers ethernet device statistics.
The network device and driver determine what fields are gathered.
introduced: 1.13.0
tags: [linux, macos, windows, networking, servers]
- name: Event Hub Consumer
id: eventhub_consumer
description: |
The Event Hub Consumer input plugin provides a consumer for use with Azure Event Hubs and Azure IoT Hub.
introduced: 1.14.0
tags: [linux, macos, windows, iot]
- name: Exec
id: exec
description: |
The Exec input plugin parses supported [Telegraf input data formats](/telegraf/v1/data_formats/input/)
(line protocol, JSON, Graphite, Value, Nagios, Collectd, and Dropwizard) into metrics.
Each Telegraf metric includes the measurement name, tags, fields, and timestamp.
introduced: 0.1.5
tags: [linux, macos, windows]
- name: Execd
id: execd
description: |
The Execd input plugin runs an external program as a daemon. Programs must output metrics in an accepted
[Telegraf input data format](/telegraf/v1/data_formats/input/)
on its standard output. Configure `signal` to send a signal to the daemon running on each collection interval.
The program output on standard error is mirrored to the Telegraf log.
introduced: 1.14.0
tags: [linux, macos, windows]
- name: Fail2ban
id: fail2ban
description: |
The Fail2ban input plugin gathers the count of failed and banned IP addresses
using [fail2ban](https://www.fail2ban.org/).
introduced: 1.4.0
tags: [linux, macos, windows, networking, security]
- name: Fibaro
id: fibaro
description: |
The Fibaro input plugin makes HTTP calls to the Fibaro controller API to gather values of hooked devices.
Those values could be true (`1`) or false (`0`) for switches, percentage for dimmers, temperature, etc.
introduced: 1.7.0
tags: [linux, macos, windows, iot]
- name: File
id: file
description: |
The File input plugin updates a list of files every interval and parses
the contents using the selected input data format.
Files will always be read in their entirety. If you wish to tail or follow a file,
then use the [Tail input plugin](#tail).
> To parse metrics from multiple files that are formatted in one of the supported
> [input data formats](/telegraf/v1/data_formats/input),
> use the [Multifile input plugin](#multifile).
introduced: 1.8.0
tags: [linux, macos, windows, systems]
- name: Filecount
id: filecount
description: |
The Filecount input plugin reports the number and total size of files in directories that match certain criteria.
introduced: 1.8.0
tags: [linux, macos, windows, systems]
- name: Filestat
id: filestat
description: |
The Filestat input plugin gathers metrics about file existence, size, and other stats.
introduced: 0.13.0
tags: [linux, macos, windows, systems]
- name: Fireboard
id: fireboard
description: |
The Fireboard input plugin gathers real time temperature data from Fireboard thermometers.
To use this input plugin, sign up to use the [Fireboard REST API](https://docs.fireboard.io/reference/restapi.html).
introduced: 1.12.0
tags: [linux, macos, windows, cloud, Io]
- name: Fluentd
id: fluentd
description: |
The Fluentd input plugin gathers Fluentd server metrics from plugin endpoint provided by in_monitor plugin.
This plugin understands data provided by `/api/plugin.json` resource (`/api/config.json` is not covered).
introduced: 1.4.0
tags: [linux, macos, windows, servers]
- name: Fritzbox
id: fritzbox
description: |
This plugin gathers statistics from a [FRITZ!Box](https://avm.de/produkte/fritzbox/) router and repeater.
introduced: 1.23.0
link: https://github.com/hdecarne-github/fritzbox-telegraf-plugin/blob/main/README.md
external: true
tags: [external, networking]
- name: GitHub
id: github
description: |
Gathers repository information from GitHub-hosted repositories.
introduced: 1.11.0
tags: [linux, macos, windows, applications]
- name: gNMI
id: gnmi
description: |
The gNMI plugin consumes telemetry data based on the
[gNMI](https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-specification.md) `Subscribe` method.
The plugin supports TLS for authentication and encryption.
This input plugin is vendor-agnostic and is supported on any platform that supports the gNMI spec.
**For Cisco devices:**
The gNMI plugin is 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.
introduced: 1.15.0
tags: [linux, macos, windows, applications]
- name: Google Cloud PubSub
id: cloud_pubsub
description: |
The Google Cloud PubSub input plugin ingests metrics from
[Google Cloud PubSub](https://cloud.google.com/pubsub) and creates metrics
using one of the supported [input data formats](https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md).
introduced: 1.10.0
tags: [linux, macos, windows, cloud, messaging]
- name: Google Cloud PubSub Push
id: cloud_pubsub_push
description: |
The Google Cloud PubSub Push (`cloud_pubsub_push`) input plugin listens for
messages sent using HTTP POST requests from Google Cloud PubSub.
The plugin expects messages in Google's Pub/Sub JSON Format ONLY.
The intent of the plugin is to allow Telegraf to serve as an endpoint of the
Google Pub/Sub '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.
introduced: 1.10.0
tags: [linux, macos, windows, cloud, messaging]
- name: Google Cloud Storage
id: google_cloud_storage
description: |
The Google Cloud Storage input plugin collects metrics by iterating files
located on a cloud storage bucket.
introduced: 1.25.0
tags: [linux, macos, windows, storage, cloud]
- name: Graylog
id: graylog
description: |
The Graylog input plugin can collect data from remote Graylog service URLs. This plugin currently supports two
types of endpoints:
- multiple (e.g., `http://[graylog-server-ip]:12900/system/metrics/multiple`)
- namespace (e.g., `http://[graylog-server-ip]:12900/system/metrics/namespace/{namespace}`)
introduced: 1.0.0
tags: [linux, macos, windows, logging]
- name: HAproxy
id: haproxy
description: |
The HAproxy input plugin gathers metrics directly from any running HAproxy instance.
It can do so by using CSV generated by HAproxy status page or from admin sockets.
introduced: 0.1.5
tags: [linux, macos, windows, networking, web]
- name: Hashicorp Consul Agent
id: consul_agent
description: |
The Hashicorp Consul agent plugin grab metrics from every Nomad agent of the cluster.
introduced: 1.22.0
tags: [applications]
- name: Hashicorp Nomad
id: nomad
description: |
The Nomad plugin grabs metrics from every Nomad agent of the cluster.
introduced: 1.22.0
tags: [applications]
- name: Hashicorp Vault
id: vault
description: |
The Vault plugin grabs metrics from every Nomad agent of the cluster.
introduced: 1.22.0
tags: [security]
- name: Hddtemp
id: hddtemp
description: |
The Hddtemp input plugin reads data from `hddtemp` daemons.
introduced: 1.0.0
tags: [linux, macos, windows, systems]
- name: HTTP
id: http
description: |
The HTTP input plugin collects metrics from one or more HTTP (or HTTPS) endpoints.
The endpoint should have metrics formatted in one of the [supported input data formats](/telegraf/v1/data_formats/input/).
Each data format has its own unique set of configuration options which can be added to the input configuration.
introduced: 1.6.0
tags: [linux, macos, windows, servers, web]
- name: HTTP Listener
id: http_listener
description: |
The `http_listener` input plugin was renamed to [`influxdb_listener`](#influxdb_listener).
The new name better describes the intended use of the plugin as a InfluxDB relay.
For general purpose transfer of metrics in any format via HTTP, use [`http_listener_v2`](#http_listener_v2)instead.
link: https://github.com/influxdata/telegraf/blob/release-1.8/plugins/inputs/http_listener/README.md
introduced: 1.1.0
deprecated: 1.8.3
tags: [linux, macos, windows, servers, web]
- name: HTTP Listener v2
id: http_listener_v2
description: |
The HTTP Listener v2 input plugin listens for metrics sent via HTTP.
Metrics may be sent in any supported [Telegraf input data format](/telegraf/v1/data_formats/input/influx).
Note the plugin previously known as `http_listener` has been renamed `influxdb_listener`.
To use Telegraf as a proxy/relay for InfluxDB, we recommend using [`influxdb_listener`](/telegraf/v1/plugins/#influxdb_listener).
introduced: 1.9.0
tags: [linux, macos, windows, servers, web]
- name: HTTP Response
id: http_response
description: |
The HTTP Response input plugin gathers metrics for HTTP responses.
The measurements and fields include `response_time`, `http_response_code`,
and `result_type`. Tags for measurements include `server` and `method`.
introduced: 0.12.1
tags: [linux, macos, windows, servers, web]
- name: Hue Bridge
id: huebridge
description: |
This plugin gathers smart home statistics from [Hue Bridge](https://www.philips-hue.com/en-us/p/hue-bridge/046677458478#overview) devices.
introduced: 1.23.0
link: https://github.com/hdecarne-github/huebridge-telegraf-plugin/blob/main/README.md
external: true
tags: [iot, external]
- name: Huge Pages
id: hugepages
description: |
The Huge Pages input plugin gathers Huge pages measurements. Transparent Huge Pages (THP) is a Linux memory management system that reduces the overhead of Translation Lookaside Buffer (TLB) lookups on machines with large amounts of memory by using larger memory pages.
introduced: 1.22.0
tags: [linux]
- name: IBM DB2
id: db2
description: |
The IBM DB2 plugin collects metrics from DB2 RDBMS using performance monitor tables.
introduced: 1.20.3
link: https://github.com/bonitoo-io/telegraf-input-db2/blob/main/README.md
external: true
tags: [linux, macos, windows, IBM, datastores, external]
- name: Icinga 2
id: icinga2
description: |
The Icinga 2 input plugin gather status on running services and hosts using
the [Icinga 2 API](https://docs.icinga.com/icinga2/latest/doc/module/icinga2/chapter/icinga2-api).
introduced: 1.8.0
tags: [linux, macos, windows, networking, servers, systems]
- name: InfiniBand
id: infiniband
description: |
The InfiniBand input plugin gathers statistics for all InfiniBand devices and ports on the system.
Counters are stored in `/sys/class/infiniband/<dev>/port/<port>/counters/`.
introduced: 1.14.0
tags: [linux, systems]
- name: InfluxDB v1.x
id: influxdb
description: |
The InfluxDB v1.x input plugin gathers metrics from the exposed InfluxDB v1.x `/debug/vars` endpoint.
Using Telegraf to extract these metrics to create a "monitor of monitors" is a
best practice and allows you to reduce the overhead associated with capturing
and storing these metrics locally within the `_internal` database for production deployments.
[Read more about this approach here](https://www.influxdata.com/blog/influxdb-debugvars-endpoint/).
introduced: 0.2.5
tags: [linux, macos, windows, data-stores]
- name: InfluxDB v2
id: influxdb
description: |
InfluxDB 2.x exposes its metrics using the Prometheus Exposition Format — there is no InfluxDB v2 input
plugin.
To collect data on an InfluxDB 2.x instance running on localhost, the configuration for the
Prometheus input plugin would be:
<div class="keep-url"></div>
```toml
[[inputs.prometheus]]
## An array of urls to scrape metrics from.
urls = ["http://localhost:8086/metrics"]
```
introduced: 1.8.0
tags: [linux, macos, windows, data-stores]
- name: InfluxDB Listener
id: influxdb_listener
description: |
The InfluxDB Listener input plugin listens for requests sent
according to the [InfluxDB HTTP API](/influxdb/v1/guides/write_data/).
The intent of the plugin is to allow Telegraf to serve as a proxy, or router,
for the HTTP `/write` endpoint of the InfluxDB HTTP API.
> This plugin was previously known as `http_listener`.
> To send general metrics via HTTP, use the [HTTP Listener v2 input plugin](#http_listener_v2) instead.
>
> This plugin is compatible with **InfluxDB 1.x** only.
The `/write` endpoint supports the `precision` query parameter and can be
set to `ns`, `u`, `ms`, `s`, `m`, `h`. Other parameters are ignored and
defer to the output plugins configuration.
When chaining Telegraf instances using this plugin, `CREATE DATABASE` requests
receive a `200 OK` response with message body `{"results":[]}` but they are not
relayed. The output configuration of the Telegraf instance which ultimately
submits data to InfluxDB determines the destination database.
introduced: 1.9.0
tags: [linux, macos, windows, data-stores]
- name: InfluxDB v2 Listener
id: influxdb_v2_listener
description: |
The InfluxDB v2 Listener input plugin listens for requests sent
according to the [InfluxDB HTTP API](/influxdb/v2/reference/api/).
The intent of the plugin is to allow Telegraf to serve as a proxy, or router,
for the HTTP `/api/v2/write` endpoint of the InfluxDB HTTP API.
The `/api/v2/write` endpoint supports the `precision` query parameter and
can be set to `ns`, `u`, `ms`, or `s`. Other parameters are ignored and
defer to the output plugins configuration.
introduced: 1.16.0
tags: [linux, macos, windows, data-stores]
- name: Intel Baseband
id: intel_baseband
description: |
Collects metrics from both dedicated and integrated Intel devices that provide Wireless Baseband hardware acceleration
introduced: 1.27.0
tags: [linux, systems]
- name: Intel DLB
id: intel_dlb
description: |
The Intel DLB input plugin reads metrics from DPDK using the telemetry v2 interface.
introduced: 1.25.0
tags: [linux, systems]
- name: Intel PMT
id: intel_pmt
description: |
Intel Platform Monitoring Technology plugin exposes Intel PMT metrics available through the Intel PMT kernel space.
introduced: 1.28.0
tags: [linux, systems]
- name: Intel PMU
id: intel_pmu
description: |
The Intel PMU input plugin exposes Intel PMU (Performance Monitoring Unit) metrics available through Linux Perf subsystem.
introduced: 1.21.0
tags: [linux, systems]
- name: Intel Powerstat
id: intel_powerstat
description: |
The Intel Powerstat input plugin collects information provided by the monitoring features of Intel Powerstat.
introduced: 1.17.0
tags: [linux]
- name: Intel Data Plane Development Kit (DPDK)
id: dpdk
description: |
The DPDK plugin collects metrics exposed by applications built with Data Plane Development Kit, an extensive set of open source libraries designed for accelerating packet processing workloads.
introduced: 1.19.0
tags: [networking]
- name: Intel RDT
id: intel_rdt
description: |
The Intel RDT input plugin collects information provided by the monitoring features of Intel Resource Director Technology (RDT).
introduced: 1.16.0
tags: [linux, macos, windows, systems]
- name: Internet Speed Monitor
id: internet_speed
description: |
The Internet Speed Monitor plugin collects data about the internet speed on the system.
introduced: 1.20.0
tags: [linux, macos, windows, systems, iot, networking]
- name: Interrupts
id: interrupts
description: |
The Interrupts input plugin gathers metrics about IRQs, including `interrupts`
(from `/proc/interrupts`) and `soft_interrupts` (from `/proc/softirqs`).
introduced: 1.3.0
tags: [linux, macos, windows, systems]
- name: IPMI Sensor
id: ipmi_sensor
description: |
The IPMI Sensor input plugin queries the local machine or remote host
sensor statistics using the `ipmitool` utility.
introduced: 0.12.0
tags: [linux, macos, windows, iot]
- name: Ipset
id: ipset
description: |
The Ipset input plugin gathers packets and bytes counters from Linux `ipset`.
It uses the output of the command `ipset save`. Ipsets created without the `counters` option are ignored.
introduced: 1.6.0
tags: [linux, macos, windows, networking, security, systems]
- name: IPtables
id: iptables
description: |
The IPtables input plugin gathers packets and bytes counters for rules within
a set of table and chain from the Linux iptables firewall.
introduced: 1.1.0
tags: [linux, macos, windows, systems]
- name: IPVS
id: ipvs
description: |
The IPVS input plugin uses the Linux kernel netlink socket interface to
gather metrics about IPVS virtual and real servers.
introduced: 1.9.0
tags: [linux, macos, windows, systems]
- name: Jenkins
id: jenkins
description: |
The Jenkins input plugin gathers information about the nodes and jobs running
in a jenkins instance.
This plugin does not require a plugin on Jenkins and it makes use of Jenkins
API to retrieve all the information needed.
introduced: 1.9.0
tags: [linux, macos, windows, build-deploy]
- name: Jolokia2 Agent
id: jolokia2_agent
description: |
The Jolokia2 Agent input plugin reads JMX metrics from one or more
[Jolokia](https://jolokia.org/) agent REST endpoints using the
[JSON-over-HTTP protocol](https://jolokia.org/reference/html/manual/jolokia_protocol.html).
link: https://github.com/influxdata/telegraf/blob/master/plugins/inputs/jolokia2_agent/README.md
introduced: 1.5.0
tags: [linux, macos, windows, networking]
- name: Jolokia2 Proxy
id: jolokia2_proxy
description: |
The Jolokia2 Proxy input plugin reads JMX metrics from one or more targets by
interacting with a [Jolokia](https://jolokia.org/) proxy REST endpoint using the
[Jolokia](https://jolokia.org/) [JSON-over-HTTP protocol](https://jolokia.org/reference/html/protocol.html).
link: https://github.com/influxdata/telegraf/blob/master/plugins/inputs/jolokia2/README.md
introduced: 1.5.0
tags: [linux, macos, windows, networking]
- name: JTI OpenConfig Telemetry
id: jti_openconfig_telemetry
description: |
The JTI OpenConfig Telemetry input plugin reads Juniper Networks implementation
of OpenConfig telemetry data from listed sensors using the Junos Telemetry Interface.
Refer to [openconfig.net](http://openconfig.net/) for more details about OpenConfig
and [Junos Telemetry Interface (JTI)](https://www.juniper.net/documentation/en_US/junos/topics/concept/junos-telemetry-interface-oveview.html).
introduced: 1.7.0
tags: [linux, macos, windows, iot]
- name: Kapacitor
id: kapacitor
description: |
The Kapacitor input plugin will collect metrics from the given Kapacitor instances.
introduced: 1.3.0
tags: [linux, macos, windows, applications]
- name: Kernel
id: kernel
description: |
The Kernel input plugin gathers kernel statistics from `/proc/stat`.
introduced: 0.11.0
tags: [linux, macos, windows, systems]
- name: Kernel VMStat
id: kernel_vmstat
description: |
The Kernel VMStat input plugin gathers kernel statistics from `/proc/vmstat`.
introduced: 1.0.0
tags: [linux, macos, windows, systems]
- name: Kibana
id: kibana
description: |
The Kibana input plugin queries the Kibana status API to obtain the health
status of Kibana and some useful metrics.
introduced: 1.8.0
tags: [linux, macos, windows, applications]
- name: Knot
id: knot
description: |
The Knot input plugin collect stats from [Knot DNS](https://knot.readthedocs.io/en/master/operation.html#statistics).
link: https://github.com/x70b1/telegraf-knot/blob/master/README.md
introduced: 1.21.4
tags: [server, external]
external: true
- name: KNX
id: knx_listener
description: |
The KNX input plugin that listens for messages on the KNX (Konnex) home-automation bus.
introduced: 1.19.0
tags: [iot]
- name: Kubernetes
id: kubernetes
description: |
> The Kubernetes input plugin is experimental and may cause high cardinality
> issues with moderate to large Kubernetes deployments.
The Kubernetes input plugin talks to the kubelet API using the `/stats/summary`
endpoint to gather metrics about the running pods and containers for a single host.
It is assumed that this plugin is running as part of a daemonset within a
Kubernetes installation. This means that Telegraf is running on every node within the cluster.
Therefore, you should configure this plugin to talk to its locally running kubelet.
introduced: 1.1.0
tags: [linux, macos, windows, build-deploy, containers]
- name: Kubernetes Inventory
id: kube_inventory
description: |
The Kubernetes Inventory input plugin generates metrics derived from the state
of the following Kubernetes resources:
- daemonsets
- deployments
- nodes
- persistentvolumes
- persistentvolumeclaims
- pods (containers)
- statefulsets
introduced: 1.10.0
tags: [linux, macos, windows, build-deploy, containers]
- name: LDAP
id: ldap
description: |
This plugin gathers metrics from LDAP servers' monitoring (cn=Monitor) backend.
introduced: 1.29.0
tags: [linux, macos, windows, build-deploy, containers]
- name: ldap_org
id: ldap_org
description: |
This plugin monitors the number of entries inside LDAP trees.
introduced: 1.19.0
link: https://github.com/falon/CSI-telegraf-plugins/blob/master/plugins/inputs/ldap_org/README.md
tags: [external]
external: true
- name: LeoFS
id: leofs
description: |
The LeoFS input plugin gathers metrics of LeoGateway, LeoManager, and LeoStorage using SNMP.
See [System monitoring](https://leo-project.net/leofs/docs/admin/system_admin/monitoring/)
in the [LeoFS documentation](https://leo-project.net/leofs/docs/) for more information.
introduced: 0.1.5
tags: [linux, macos, windows, systems, data-stores]
- name: Libvirt
id: libvirt
description: |
The Libvirt plugin collects statistics from virtualized guests using
virtualization libvirt API.
introduced: 1.25.0
tags: [linux, systems]
- name: Linux CPU
id: linux_cpu
description: |
The Linux CPU input plugin athers CPU metrics exposed on Linux-based systems.
introduced: 1.24.0
tags: [linux, systems]
- name: Linux Sysctl FS
id: linux_sysctl_fs
description: |
The Linux Sysctl FS input plugin provides Linux system level file (`sysctl fs`) metrics.
The documentation on these fields can be found [here](https://www.kernel.org/doc/Documentation/sysctl/fs.txt).
introduced: 1.3.0
tags: [linux, macos, windows, systems]
- name: Logical Volume Manager
id: lvm
description: |
The Logical Volume Manager collects information about physical volumes, volume groups, and logical volumes in Linux.
introduced: 1.21.0
tags: [linux, systems]
- name: Logparser
id: logparser
description: |
The Logparser input plugin streams and parses the given log files.
Currently, it has the capability of parsing "grok" patterns
from log files, which also supports regular expression (regex) patterns.
introduced: 1.0.0
tags: [linux, macos, windows, logging]
- name: Logstash
id: logstash
description: |
The Logstash input plugin reads metrics exposed by the [Logstash Monitoring API](https://www.elastic.co/guide/en/logstash/current/monitoring-logstash.html).
The plugin supports Logstash 5 and later.
introduced: 1.12.0
tags: [linux, macos, windows, logging]
- name: Lustre2
id: lustre2
description: |
Lustre Jobstats allows for RPCs to be tagged with a value, such as a job's ID.
This allows for per job statistics.
The Lustre2 input plugin collects statistics and tags the data with the `jobid`.
introduced: 0.1.5
tags: [linux, macos, windows, systems]
- name: Mailchimp
id: mailchimp
description: |
The Mailchimp input plugin gathers metrics from the `/3.0/reports` MailChimp API.
introduced: 0.2.4
tags: [linux, macos, windows, cloud, web]
- name: MarkLogic
id: marklogic
description: |
The MarkLogic input plugin gathers health status metrics from one or more MarkLogic hosts.
introduced: 1.12.0
tags: [linux, macos, windows, data-stores]
- name: Mcrouter
id: mcrouter
description: |
The Mcrouter input plugin gathers statistics data from a mcrouter instance.
[Mcrouter](https://github.com/facebook/mcrouter) is a memcached protocol router,
developed and maintained by Facebook, for scaling memcached (http://memcached.org/) deployments.
It's a core component of cache infrastructure at Facebook and Instagram where mcrouter
handles almost 5 billion requests per second at peak.
introduced: 1.7.0
tags: [linux, macos, windows, networking]
- name: Mdstat
id: mdstat
description: |
The mdstat plugin gathers statistics about any Linux MD RAID arrays configured on the host by reading /proc/mdstat.
introduced: 1.20.0
tags: [linux, macos, windows, systems]
- name: Mem
id: mem
description: |
The Mem input plugin collects system memory metrics.
For a more complete explanation of the difference between used and actual_used RAM,
see [Linux ate my ram](https://www.linuxatemyram.com/).
introduced: 0.1.5
tags: [linux, macos, windows, systems]
- name: Memcached
id: memcached
description: |
The Memcached input plugin gathers statistics data from a Memcached server.
introduced: 0.1.2
tags: [linux, macos, windows, data-stores]
- name: Mesosphere DC/OS
id: dcos
description: |
The Mesosphere DC/OS input plugin gathers metrics from a DC/OS cluster's
[metrics component](https://docs.mesosphere.com/1.10/metrics/).
introduced: 1.5.0
tags: [linux, macos, windows, containers]
- name: Microsoft SQL Server
id: sqlserver
description: |
The Microsoft SQL Server input plugin provides metrics for your Microsoft SQL Server instance.
It currently works with SQL Server versions 2008+.
Recorded metrics are lightweight and use Dynamic Management Views supplied by SQL Server.
introduced: 0.10.1
tags: [linux, macos, windows, data-stores]
- name: Minecraft
id: minecraft
description: |
The Minecraft input plugin uses the RCON protocol to collect statistics from
a scoreboard on a Minecraft server.
introduced: 1.4.0
tags: [linux, macos, windows, gaming]
- name: Mock
id: mock
description: |
The mock input plugin generates random data based on a selection of different algorithms.
introduced: 1.22.0
tags: [build-deploy]
- name: Modbus
id: modbus
description: |
The Modbus input plugin collects `discrete_inputs`, `coils`, `input_registers` and `holding_registers`
via Modbus TCP or Modbus RTU/ASCII.
introduced: 1.14.0
tags: [linux, macos, windows, networking]
- name: MongoDB
id: mongodb
description: |
The MongoDB input plugin collects MongoDB stats exposed by `serverStatus` and
few more and create a single measurement containing values.
introduced: 0.1.5
tags: [linux, macos, windows, data-stores]
- name: Monit
id: monit
description: |
The Monit input plugin gathers metrics and status information about local processes, remote hosts, files,
file systems, directories, and network interfaces managed and watched by Monit. To use this plugin,
enable the [HTTPD TCP port](https://mmonit.com/monit/documentation/monit.html#TCP-PORT) in Monit.
introduced: 1.14.0
tags: [linux, macos, windows, systems, networking]
- name: MQTT Consumer
id: mqtt_consumer
description: |
The MQTT Consumer input plugin reads from specified MQTT topics and adds messages to InfluxDB.
Messages are in the [Telegraf input data formats](/telegraf/v1/data_formats/input/).
introduced: 0.10.3
tags: [linux, macos, windows, messaging, iot]
- name: Multifile
id: multifile
description: |
The Multifile input plugin allows Telegraf to combine data from multiple files
into a single metric, creating one field or tag per file.
This is often useful creating custom metrics from the `/sys` or `/proc` filesystems.
> To parse metrics from a single file formatted in one of the supported
> [input data formats](/telegraf/v1/data_formats/input),
> use the [file input plugin](#file).
introduced: 1.10.0
tags: [linux, macos, windows]
- name: MySQL
id: mysql
description: |
The MySQL input plugin gathers the statistics data from MySQL, MariaDB, and Percona servers.
introduced: 0.1.1
tags: [linux, macos, windows, data-stores]
- name: NATS Consumer
id: nats_consumer
description: |
The NATS Consumer input plugin reads from specified NATS subjects and adds messages to InfluxDB.
Messages are expected in the [Telegraf input data formats](/telegraf/v1/data_formats/input/).
A Queue Group is used when subscribing to subjects so multiple instances of Telegraf
can read from a NATS cluster in parallel.
introduced: 0.10.3
tags: [linux, macos, windows, messaging]
- name: NATS Server Monitoring
id: nats
description: |
The NATS Server Monitoring input plugin gathers metrics when using the
[NATS Server monitoring server](https://docs.nats.io/running-a-nats-service/introduction).
introduced: 1.6.0
tags: [linux, macos, windows, messaging]
- name: Neptune Apex
id: neptune_apex
description: |
The Neptune Apex input plugin collects real-time data from the Apex `status.xml` page.
The Neptune Apex controller family allows an aquarium hobbyist to monitor and
control their tanks based on various probes.
The data is taken directly from the `/cgi-bin/status.xml` at the interval specified
in the `telegraf.conf` configuration file.
introduced: 1.10.0
tags: [linux, macos, windows, iot]
- name: Net
id: net
description: |
The Net input plugin gathers metrics about network interface usage (Linux only).
link: https://github.com/influxdata/telegraf/blob/master/plugins/inputs/net/README.md
introduced: 0.1.1
tags: [linux, macos, networking]
- name: Netflow
id: netflow
description: |
The Netflow input plugin gathers metrics from Netflow v5, Netflow v9 and
IPFIX collectors.
introduced: 1.25.0
tags: [linux, networking]
- name: Netstat
id: netstat
description: |
The Netstat input plugin gathers TCP metrics such as established, time-wait
and sockets counts by using `lsof`.
link: https://github.com/influxdata/telegraf/blob/master/plugins/inputs/netstat/README.md
introduced: 0.2.0
tags: [linux, macos, windows, networking, systems]
- name: Network Response
id: net_response
description: |
The Network Response input plugin tests UDP and TCP connection response time.
It can also check response text.
introduced: 0.10.3
tags: [linux, macos, windows, networking]
- name: NFS
id: nfsclient
description: |
The NFS input plugin collects data from an NFS Client per-mount statistics (`/proc/self/mountstats`). By default, the plugin collects only a limited number of general system-level metrics.
introduced: 1.18.0
tags: [linux, macos, windows, networking, systems]
- name: NGINX
id: nginx
description: |
The NGINX input plugin reads NGINX basic status information (`ngx_http_stub_status_module`).
introduced: 0.1.5
tags: [linux, macos, windows, servers, web]
- name: NGINX VTS
id: nginx_vts
description: |
The NGINX VTS input plugin gathers NGINX status using external virtual host
traffic status module - https://github.com/vozlt/nginx-module-vts.
This is an NGINX module that provides access to virtual host status information.
It contains the current status such as servers, upstreams, caches.
This is similar to the live activity monitoring of NGINX Plus.
For module configuration details, see the
[NGINX VTS module documentation](https://github.com/vozlt/nginx-module-vts#synopsis).
introduced: 1.9.0
tags: [linux, macos, windows, servers, web]
- name: NGINX Plus
id: nginx_plus
description: |
The NGINX Plus input plugin is for NGINX Plus, the commercial version of the open source web server NGINX.
To use this plugin you will need a license.
For more information, see [Whats the Difference between Open Source NGINX and NGINX Plus?](https://www.nginx.com/blog/whats-difference-nginx-foss-nginx-plus/).
Structures for NGINX Plus have been built based on history of
[status module documentation](http://nginx.org/en/docs/http/ngx_http_status_module.html).
introduced: 1.5.0
tags: [linux, macos, windows, servers, web]
- name: NGINX Plus API
id: nginx_plus_api
description: |
The NGINX Plus API input plugin gathers advanced status information for NGINX Plus servers.
introduced: 1.9.0
tags: [linux, macos, windows, servers, web]
- name: NGINX Stream STS
id: nginx_sts
description: |
The NGINX Plus API input plugin gathers NGINX status using external virtual host traffic status.
introduced: 1.15.0
tags: [linux, macos, windows, servers, web]
- name: NGINX Upstream Check
id: nginx_upstream_check
description: |
The NGINX Upstream Check input plugin reads the status output of the
[nginx_upstream_check](https://github.com/yaoweibin/nginx_upstream_check_module).
This module can periodically check the NGINX upstream servers using the configured
request and interval to determine if the server is still available.
If checks are failed, then the server is marked as `down` and will not receive
any requests until the check passes and the server will be marked as `up` again.
The status page displays the current status of all upstreams and servers as well
as number of the failed and successful checks. This information can be exported
in JSON format and parsed by this input.
introduced: 1.10.0
tags: [linux, macos, windows, servers, web]
- name: NSD
id: nsd
description: |
The NSD input plugin collects metrics from [NSD](https://www.nlnetlabs.nl/projects/nsd/about/), an authoritative DNS name server.
introduced: 1.0.0
tags: [linux, macos, windows, web, servers]
- name: NSQ
id: nsq
description: |
The NSQ input plugin collects metrics from NSQD API endpoints.
introduced: 1.16.0
tags: [linux, macos, windows, messaging]
- name: NSQ Consumer
id: nsq_consumer
description: |
The NSQ Consumer input plugin polls a specified NSQD topic and adds messages to InfluxDB.
This plugin allows a message to be in any of the supported data_format types.
introduced: 0.10.1
tags: [linux, macos, windows, messaging]
- name: Nstat
id: nstat
description: |
The Nstat input plugin collects network metrics from `/proc/net/netstat`,
`/proc/net/snmp`, and `/proc/net/snmp6` files.
introduced: 0.13.1
tags: [linux, macos, windows, networking, systems]
- name: NSDP
id: nsdp
description: |
The NSDP input plugin gathers switch network statistics.
introduced: 1.24.0
link: https://github.com/hdecarne-github/nsdp-telegraf-plugin/blob/master/README.md
tags: [linux, macos, windows, networking, systems, external]
external: true
- name: NTPq
id: ntpq
description: |
The NTPq input plugin gets standard NTP query metrics, requires ntpq executable.
introduced: 0.11.0
tags: [linux, macos, windows, networking, systems]
- name: NVIDIA SMI
id: nvidia_smi
description: |
The NVIDIA SMI input plugin uses a query on the [NVIDIA System Management Interface
(`nvidia-smi`)](https://developer.nvidia.com/nvidia-system-management-interface)
binary to pull GPU stats including memory and GPU usage, temp and other.
introduced: 1.7.0
tags: [linux, macos, windows, systems]
- name: Octoprint
id: octoprint
description: |
The Octoprint input plugin gathers metrics from the [Octoprint API](https://docs.octoprint.org/en/master/api/index.html).
introduced: 1.16.0
link: https://github.com/sspaink/octoprint-telegraf-plugin/blob/master/README.md
tags: [linux, macos, windows, external]
external: true
- name: OPC UA
id: opcua
description: |
The OPC UA plugin gathers metrics from client devices using the [OPC Foundation's Unified Architecture (UA)](https://opcfoundation.org/about/opc-technologies/opc-ua/) machine-to-machine communication protocol for industrial automation.
introduced: 1.16.0
tags: [linux, macos, windows, iot]
- name: OPC UA Listener
id: opcua_listener
description: |
The OPC UA plugin gathers metrics from subscriptions to OPC UA devices.
introduced: 1.25.0
tags: [linux, macos, windows, iot]
- name: OpenSearch Query
id: opensearch_query
description: |
Gathers metrics from OpenSearch query endpoints.
introduced: 1.26.0
tags: [linux, macos, windows]
- name: OpenLDAP
id: openldap
description: |
The OpenLDAP input plugin gathers metrics from OpenLDAP's `cn=Monitor` backend.
introduced: 1.4.0
tags: [linux, macos, windows, data-stores]
- name: OpenNTPD
id: openntpd
description: |
The OpenNTPD input plugin gathers standard Network Time Protocol (NTP) query
metrics from OpenNTPD using the `ntpctl` command.
introduced: 1.12.0
tags: [linux, macos, windows, networking]
- name: OpenSMTPD
id: opensmtpd
description: |
The OpenSMTPD input plugin gathers stats from [OpenSMTPD](https://www.opensmtpd.org/),
a free implementation of the server-side SMTP protocol.
introduced: 1.5.0
tags: [linux, macos, windows, applications]
- name: OpenStack
id: openstack
description: |
The OpenStack input plugin collects metrics on [OpenStack services](https://www.openstack.org/).
introduced: 1.21.0
tags: [linux, macos, windows, applications]
- name: OpenTelemetry
id: opentelemetry
description: |
Receives traces, metrics and logs from OpenTelemetry clients and agents via gRPC.
introduced: 1.19.0
tags: [logging, messaging]
- name: OpenWeatherMap
id: openweathermap
description: |
Collect current weather and forecast data from OpenWeatherMap.
introduced: 1.11.0
tags: [linux, macos, windows, applications]
- name: Oracle
id: oracle
description: |
The Oracle plugin collects metrics from Oracle RDBMS using Dynamic Performance Views.
introduced: 1.20.3
link: https://github.com/bonitoo-io/telegraf-input-oracle/blob/main/README.md
external: true
tags: [linux, macos, windows, oracle, datastores, external]
- name: P4 Runtime
id: p4runtime
description: |
Collects metrics from P4 programmable pipelines over gRPC.
introduced: 1.26.0
tags: [linux, macos, windows]
- name: PF
id: pf
description: |
The PF input plugin gathers information from the FreeBSD/OpenBSD pf firewall.
Currently it can retrieve information about the state table: the number of current
entries in the table, and counters for the number of searches, inserts, and removals
to the table. The pf plugin retrieves this information by invoking the `pfstat` command.
introduced: 1.5.0
tags: [linux, macos, windows, networking, security]
- name: PgBouncer
id: pgbouncer
description: |
The PgBouncer input plugin provides metrics for your PgBouncer load balancer.
For information about the metrics, see the [PgBouncer documentation](https://pgbouncer.github.io/usage.html).
introduced: 1.8.0
tags: [linux, macos, windows, data-stores]
- name: Phusion Passenger
id: passenger
description: |
The Phusion Passenger input plugin gets Phusion Passenger statistics using
their command line utility `passenger-status`.
introduced: 0.10.1
tags: [linux, macos, windows, web]
- name: PHP-FPM
id: phpfpm
description: |
The PHP-FPM input plugin gets phpfpm statistics using either HTTP status page or fpm socket.
introduced: 0.1.10
tags: [linux, macos, windows, servers, web]
- name: Ping
id: ping
description: |
The Ping input plugin measures the round-trip for ping commands, response time,
and other packet statistics.
introduced: 0.1.8
tags: [linux, macos, windows, networking]
- name: Plex Webhook
id: plex
description: |
The Plex Webhook input plugin listens for events from [Plex Media Server Webhooks](https://support.plex.tv/articles/115002267687-webhooks/).
introduced: 1.18.0
link: https://github.com/russorat/telegraf-webhooks-plex/blob/master/README.md
tags: [linux, macos, windows, applications, external]
external: true
- name: Postfix
id: postfix
description: |
The Postfix input plugin reports metrics on the postfix queues.
For each of the active, hold, incoming, maildrop, and deferred
[queues](http://www.postfix.org/QSHAPE_README.html#queues),
it will report the queue length (number of items),
size (bytes used by items), and age (age of oldest item in seconds).
introduced: 1.5.0
tags: [linux, macos, windows, services, web]
- name: PostgreSQL
id: postgresql
description: |
The PostgreSQL input plugin provides metrics for your PostgreSQL database.
It currently works with PostgreSQL versions 8.1+.
It uses data from the built-in `pg_stat_database` and `pg_stat_bgwriter` views.
The metrics recorded depend on your version of PostgreSQL.
introduced: 0.10.3
tags: [linux, macos, windows, data-stores]
- name: PostgreSQL Extensible
id: postgresql_extensible
description: |
This PostgreSQL Extensible input plugin provides metrics for your Postgres database.
It has been designed to parse SQL queries in the plugin section of `telegraf.conf` files.
introduced: 0.12.0
tags: [linux, macos, windows, data-stores]
- name: PowerDNS
id: powerdns
description: |
The PowerDNS input plugin gathers metrics about PowerDNS using UNIX sockets.
introduced: 0.10.2
tags: [linux, macos, windows, networking, web]
- name: PowerDNS Recursor
id: powerdns_recursor
description: |
The PowerDNS Recursor input plugin gathers metrics about PowerDNS Recursor using UNIX sockets.
introduced: 1.11.0
tags: [linux, macos, windows, networking, web]
- name: Processes
id: processes
description: |
The Processes input plugin gathers info about the total number of processes
and groups them by status (zombie, sleeping, running, etc.). On Linux, this
plugin requires access to `procfs` (`/proc`); on other operating systems,
it requires access to execute `ps`.
introduced: 0.11.0
tags: [linux, macos, windows, systems]
- name: Procstat
id: procstat
description: |
The Procstat input plugin monitors system resource usage of an individual
processes using their `/proc` data.
Processes can be specified either by `pid` file, by executable name, by command
line pattern matching, by username, by systemd unit name, or by cgroup name/path
(in this order or priority). This plugin uses `pgrep` when an executable name is
provided to obtain the `pid`. The Procstat plugin transmits IO, memory, cpu,
file descriptor-related measurements for every process specified. A prefix can
be set to isolate individual process specific measurements.
The Procstat input plugin will tag processes according to how they are specified
in the configuration. If a pid file is used, a "pidfile" tag will be generated.
On the other hand, if an executable is used an "exe" tag will be generated.
introduced: 0.2.0
tags: [linux, macos, windows, systems]
- name: Prometheus Format
id: prometheus
description: |
The Prometheus Format input plugin gathers metrics from HTTP
servers exposing metrics in Prometheus format.
introduced: 0.2.1
tags: [linux, macos, windows, applications]
- name: Proxmox
id: proxmox
description: |
The Proxmox plugin gathers metrics about containers and VMs using the [Proxmox API](https://pve.proxmox.com/wiki/Proxmox_VE_API).
introduced: 1.16.0
tags: [linux, macos, windows]
- name: PSI
id: psi
description: |
The PSI input plugins push pressure stall information (PSI) from the Linux Kernel to InfluxDB.
introduced: 1.22.1
link: https://github.com/gridscale/linux-psi-telegraf-plugin/blob/main/README.md
tags: [linux, external]
external: true
- name: Puppet Agent
id: puppetagent
description: |
The Puppet Agent input plugin collects variables outputted from the `last_run_summary.yaml`
file usually located in `/var/lib/puppet/state/` Puppet Agent Runs. For more information, see
[Puppet Monitoring: How to Monitor the Success or Failure of Puppet Runs](https://puppet.com/blog/puppet-monitoring-how-to-monitor-success-or-failure-of-puppet-runs)
introduced: 0.2.0
tags: [linux, macos, windows, build-deploy]
- name: RabbitMQ
id: rabbitmq
description: |
The RabbitMQ input plugin reads metrics from RabbitMQ servers via the
[Management Plugin](https://www.rabbitmq.com/management.html).
introduced: 0.1.5
tags: [linux, macos, windows, messaging]
- name: Radius
id: radius
description: |
Collects authentication response time metrics from Radius.
introduced: 1.26.0
tags: [linux, macos, windows]
- name: Raindrops Middleware
id: raindrops
description: |
The Raindrops Middleware input plugin reads from the specified
[Raindrops middleware](http://raindrops.bogomips.org/Raindrops/Middleware.html)
URI and adds the statistics to InfluxDB.
introduced: 0.10.3
tags: [linux, macos, windows, servers, web]
- name: RAS
id: ras
description: |
The RAS input plugin gathers and counts errors provided by [RASDaemon](https://github.com/mchehab/rasdaemon), a RAS (reliability, availability, and serviceability) logging tool.
introduced: 1.16.0
tags: [linux, macos, windows, servers, web]
- name: RavenDB
id: ravendb
description: |
The RavenDB input plugin reads metrics from [RavenDB](https://ravendb.net/).
introduced: 1.18.0
tags: [linux, macos, windows, data-stores]
- name: Redfish
id: redfish
description: |
The Redfish input plugin gathers metrics and status information of hardware servers for which [DMTF's Redfish](https://redfish.dmtf.org/) is enabled.
introduced: 1.15.0
tags: [linux, macos, windows, servers, networking]
- name: Redis
id: redis
description: |
The Redis input plugin gathers the results of the INFO Redis command.
There are two separate measurements: `redis` and `redis_keyspace`,
the latter is used for gathering database-related statistics.
Additionally the plugin also calculates the hit/miss ratio (`keyspace_hitrate`)
and the elapsed time since the last RDB save (`rdb_last_save_time_elapsed`).
introduced: 0.1.1
tags: [linux, macos, windows, data-stores]
- name: Redis sentinel
id: redis_sentinel
description: |
A plugin for Redis Sentinel to monitor multiple Sentinel instances that
are monitoring multiple Redis servers and replicas.
introduced: 1.22.0
tags: [linux, macos, windows]
- name: RethinkDB
id: rethinkdb
description: |
The RethinkDB input plugin works with RethinkDB 2.3.5+ databases that requires
username, password authorization, and Handshake protocol v1.0.
introduced: 0.1.3
tags: [linux, macos, windows, data-stores]
- name: Riak
id: riak
description: |
The Riak input plugin gathers metrics from one or more Riak instances.
introduced: 0.10.4
tags: [linux, macos, windows, data-stores]
- name: Riemann Listener
id: riemann_listener
description: |
The Riemann Listener input plugin listens for messages Riemann clients using Riemann-Protobuff format.
introduced: 1.17.0
tags: [linux, macos, windows]
- name: AMD ROCm System Management Interface (SMI)
id: amd_rocm_smi
description: |
The AMD ROCm System Management Interface plugin pulls statistics from AMD GPUs including memory, usage, and temperature.
introduced: 1.20.0
tags: [linux, macos, windows, systems]
- name: Salesforce
id: salesforce
description: |
The Salesforce input plugin gathers metrics about the limits in your Salesforce
organization and the remaining usage.
It fetches its data from the limits endpoint of the Salesforce REST API.
introduced: 1.4.0
tags: [linux, macos, windows, applications, cloud]
- name: Sensors
id: sensors
description: |
The Sensors input plugin collects collects sensor metrics with the sensors
executable from the `lm-sensor` package.
introduced: 0.10.1
tags: [linux, macos, windows, iot]
- name: SFlow
id: sflow
description: |
The SFlow input plugin provides support for acting as an SFlow V5 collector
in accordance with the [sflow.org](https://sflow.org/) specification.
introduced: 1.14.0
tags: [linux, macos, windows, networking]
- name: Siemens S7 Comm
id: s7comm
description: |
This plugin gathers information from Siemens PLC (Programmatic Logic Controller).
introduced: 1.28.0
link: https://github.com/nicolasme/s7comm/blob/main/README.md
tags: [linux, macos, windows, iot]
- name: Slab
id: slab
description: |
This plugin collects details on how much memory each entry in Slab cache is consuming.
introduced: 1.23.0
link: https://github.com/influxdata/telegraf/blob/master/plugins/inputs/slab/README.md
tags: [linux, system]
- name: SLURM
id: slurm
description: |
This plugin gather diag, jobs, nodes, partitions and reservation metrics
by leveraging SLURM's REST API as provided by the slurmrestd daemon
introduced: 1.32.0
tags: [linux, macos, windows]
- name: S.M.A.R.T.
id: smart
description: |
The SMART input plugin gets metrics using the command line utility `smartctl`
for SMART (Self-Monitoring, Analysis and Reporting Technology) storage devices.
SMART is a monitoring system included in computer hard disk drives (HDDs)
and solid-state drives (SSDs), which include most modern ATA/SATA, SCSI/SAS and NVMe disks.
The plugin detects and reports on various indicators of drive reliability,
with the intent of enabling the anticipation of hardware failures.
See [smartmontools](https://www.smartmontools.org/).
introduced: 1.5.0
tags: [linux, macos, windows, systems]
- name: smartctl
id: smartctl
description: |
The SMART input plugin gets metrics using the command line utility `smartctl`
for SMART (Self-Monitoring, Analysis and Reporting Technology) storage devices.
This plugin parses and uses the JSON output from `smartctl`. This is only
available in newer versions of the tool.
introduced: 1.31.0
tags: [linux, macos, windows, systems]
- name: SNMP
id: snmp
description: |
The SNMP input plugin gathers metrics from SNMP agents.
introduced: 0.10.1
tags: [linux, macos, windows, networking]
- name: SNMP Trap
id: snmp_trap
description: |
The SNMP Trap plugin receives SNMP notifications (traps and inform requests).
Notifications are received over UDP on a configurable port.
Resolve OIDs to strings using system MIB files (just like with the [SNMP input plugin](#snmp)).
introduced: 1.13.0
tags: [linux, macos, windows, networking]
- name: Socket Listener
id: socket_listener
description: |
The Socket Listener input plugin listens for messages from streaming (TCP, UNIX)
or datagram (UDP, unixgram) protocols. Messages are expected in the
[Telegraf Input Data Formats](/telegraf/v1/data_formats/input/).
introduced: 1.3.0
tags: [linux, macos, windows, networking]
- name: Socketstat
id: socketstat
description: |
The Socketstat input plugin gathers indicators from established socket connections.
introduced: 1.22.0
tags: [linux]
- name: SQL
id: sql
description: |
The SQL plugin reads and ingests SQL data from a variety of SQL databases into InfluxDB.
introduced: 1.19.0
tags: [linux, macos, windows, data-stores]
- name: Stackdriver
id: stackdriver
description: |
The Stackdriver input plugin gathers metrics from the
[Stackdriver Monitoring API](https://cloud.google.com/monitoring/api/v3/).
> This plugin accesses APIs that are [chargeable](https://cloud.google.com/stackdriver/pricing#monitoring-costs).
> You may incur costs.
introduced: 1.10.0
tags: [linux, macos, windows, cloud]
- name: StatsD
id: statsd
description: |
The StatsD input plugin is a special type of plugin which runs a backgrounded
`statsd` listener service while Telegraf is running.
StatsD messages are formatted as described in the original
[etsy statsd](https://github.com/etsy/statsd/blob/master/docs/metric_types.md) implementation.
introduced: 0.2.0
tags: [linux, macos, windows, applications]
- name: Supervisor
id: supervisor
description: |
The supervisor input gathers information about processes that running under supervisor using XML-RPC API.
introduced: 1.24.0
tags: [linux, macos, windows]
- name: Suricata
id: suricata
description: |
The Suricata input plugin reports internal performance counters of the Suricata
IDS/IPS engine, such as captured traffic volume, memory usage, uptime, flow counters, and more.
It provides a socket for the Suricata log output to write JSON output to
and processes the incoming data to fit Telegraf's format.
introduced: 1.13.0
tags: [linux, macos, windows, networking]
- name: Swap
id: swap
description: |
Supports: Linux only.
The Swap input plugin gathers metrics about swap memory usage.
For more information about Linux swap spaces, see
[All about Linux swap space](https://www.linux.com/news/all-about-linux-swap-space)
introduced: 1.7.0
tags: [linux, macos, systems]
- name: Synproxy
id: synproxy
description: |
The Synproxy plugin gathers synproxy metrics.
Synproxy is a Linux netfilter module used for SYN attack mitigation.
introduced: 1.13.0
tags: [linux, macos, windows, networking]
- name: Syslog
id: syslog
description: |
The Syslog input plugin listens for syslog messages transmitted over
[UDP](https://tools.ietf.org/html/rfc5426) or [TCP](https://tools.ietf.org/html/rfc5425).
Syslog messages should be formatted according to [RFC 5424](https://tools.ietf.org/html/rfc5424).
introduced: 1.7.0
tags: [linux, macos, windows, logging, systems]
- name: Sysstat
id: sysstat
description: |
The Sysstat input plugin collects [sysstat](https://github.com/sysstat/sysstat)
system metrics with the sysstat collector utility `sadc` and parses the created
binary data file with the `sadf` utility.
introduced: 0.12.1
tags: [linux, macos, windows, systems]
- name: System
id: system
description: |
The System input plugin gathers general stats on system load, uptime, and
number of users logged in. It is basically equivalent to the UNIX `uptime` command.
introduced: 0.1.6
tags: [linux, macos, windows, systems]
- name: SystemD Timings
id: systemd_timings
description: |
The SystemD Timings plugin collects systemd boot timing metrics.
introduced: 1.16.0
tags: [linux, macos, windows, systems, external]
link: https://github.com/pdmorrow/telegraf-execd-systemd-timings/blob/main/README.md
external: true
- name: Systemd Units
id: systemd_units
description: |
The Systemd Units plugin gathers systemd unit status metrics on Linux.
It relies on `systemctl list-units --all --type=service` to collect data on service status.
Results are tagged with the unit name and provide enumerated fields for loaded,
active, and running fields, indicating the unit health.
This plugin can gather other unit types as well.
See `systemctl list-units --all --type help` for possible options.
> This plugin is related to the [Windows Services input plugin](#win_services),
> which fulfills the same purpose on Windows.
introduced: 1.13.0
tags: [linux, systems]
- name: Tacacs
id: tacacs
description: |
Tacacs plugin collects successful tacacs authentication response times.
introduced: 1.28.0
tags: [linux, networking]
- name: Tail
id: tail
description: |
The Tail input plugin "tails" a log file and parses each log message.
introduced: 1.1.2
tags: [linux, macos, windows, logging]
- name: Teamspeak 3
id: teamspeak
description: |
The Teamspeak 3 input plugin uses the Teamspeak 3 ServerQuery interface of
the Teamspeak server to collect statistics of one or more virtual servers.
introduced: 1.5.0
tags: [linux, macos, windows, applications, gaming]
- name: Telegraf v1.x
id: internal
description: |
The Telegraf v1.x input plugin collects metrics about the Telegraf v1.x agent itself.
Note that some metrics are aggregates across all instances of one type of plugin.
introduced: 1.2.0
tags: [linux, macos, windows, applications]
- name: Temp
id: temp
description: |
The Temp input plugin collects temperature data from sensors.
introduced: 1.8.0
tags: [linux, macos, windows, iot]
- name: Tengine Web Server
id: tengine
description: |
The Tengine Web Server input plugin gathers status metrics from the
[Tengine Web Server](http://tengine.taobao.org/) using the
[Reqstat module](http://tengine.taobao.org/document/http_reqstat.html).
introduced: 1.8.0
tags: [linux, macos, windows, servers, web]
- name: Trig
id: trig
description: |
The Trig input plugin inserts sine and cosine waves for demonstration purposes.
link: https://github.com/influxdata/telegraf/blob/master/plugins/inputs/trig
introduced: 0.3.0
tags: [linux, macos, windows]
- name: Twemproxy
id: twemproxy
description: |
The Twemproxy input plugin gathers data from Twemproxy instances, processes
Twemproxy server statistics, processes pool data, and processes backend server
(Redis/Memcached) statistics.
link: https://github.com/influxdata/telegraf/blob/master/plugins/inputs/twemproxy
introduced: 0.3.0
tags: [linux, macos, windows, servers, web]
- name: Unbound
id: unbound
description: |
The Unbound input plugin gathers statistics from [Unbound](https://www.unbound.net/),
a validating, recursive, and caching DNS resolver.
introduced: 1.5.0
tags: [linux, macos, windows, networking]
- name: UPSD
id: upsd
description: |
The UPSD input plugin reads data of one or more Uninterruptible Power Supplies from an upsd daemon using its NUT network protocol.
introduced: 1.24.0
tags: [linux, macos, windows, networking]
- name: uWSGI
id: uwsgi
description: |
The uWSGI input plugin gathers metrics about uWSGI using the [uWSGI Stats Server](https://uwsgi-docs.readthedocs.io/en/latest/StatsServer.html).
introduced: 1.12.0
tags: [linux, macos, windows, cloud]
- name: Varnish
id: varnish
description: |
The Varnish input plugin gathers stats from [Varnish HTTP Cache](https://varnish-cache.org/).
introduced: 0.13.1
tags: [linux, macos, windows, networking]
- name: VMware vSphere
id: vsphere
description: |
The VMware vSphere input plugin uses the vSphere API to gather metrics from
multiple vCenter servers (clusters, hosts, VMs, and data stores).
For more information on the available performance metrics, see
[Common vSphere Performance Metrics](https://github.com/influxdata/telegraf/blob/master/plugins/inputs/vsphere/METRICS.md)
introduced: 1.8.0
tags: [linux, macos, windows, containers]
- name: Webhooks
id: webhooks
description: |
The Webhooks input plugin starts an HTTPS server and registers multiple webhook listeners.
#### Available webhooks
- [Filestack](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/webhooks/filestack/)
- [Github](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/webhooks/github/)
- [Mandrill](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/webhooks/mandrill/)
- [Rollbar](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/webhooks/rollbar/)
- [Papertrail](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/webhooks/papertrail/)
- [Particle](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/webhooks/particle/)
#### Add new webhooks
If you need a webhook that is not supported, consider
[adding a new webhook](https://github.com/influxdata/telegraf/blob/master/plugins/inputs/webhooks#adding-new-webhooks-plugin)
introduced: 1.0.0
tags: [linux, macos, windows, applications, web]
- name: Windows Performance Counters
id: win_perf_counters
description: |
The Windows Performance Counters input plugin reads Performance Counters on the
Windows operating system. **Windows only**.
introduced: 0.10.2
tags: [windows, systems]
- name: Windows Eventlog
id: win_eventlog
description: |
The Windows Eventlog input plugin reports Windows event logging. **Windows Vista and later only**.
introduced: 1.16.0
tags: [windows, servers, systems, logging]
- name: Windows Services
id: win_services
description: |
The Windows Services input plugin reports Windows services info. **Windows only**.
introduced: 1.4.0
tags: [windows, servers, systems]
- name: Windows Management Instrumentation
id: win_wmi
description: |
Queries Windows Management Instrumentation (WMI) classes.
introduced: 1.26.0
tags: [windows, servers, systems]
- name: Wireless
id: wireless
description: |
The Wireless input plugin gathers metrics about wireless link quality by
reading the `/proc/net/wireless` file. **This plugin currently supports Linux only**.
introduced: 1.9.0
tags: [linux, networking]
- name: Wireguard
id: wireguard
description: |
The Wireguard input plugin collects statistics on the local Wireguard server using the `wgctrl` library.
Reports gauge metrics for Wireguard interface device(s) and its peers.
introduced: 1.14.0
tags: [linux, macos, windows, networking]
- name: X.509 Certificate
id: x509_cert
description: |
The X.509 Certificate input plugin provides information about X.509 certificate
accessible using the local file or network connection.
introduced: 1.8.0
tags: [linux, macos, windows, networking]
- name: x509crl
id: x509_crl
description: |
This plugin provides information about X509 CRL (Certificate Revocation Lists) accessible via a file.
introduced: 1.19.0
link: https://github.com/jcgonnard/telegraf-input-x590crl/blob/master/README.md
tags: [external]
external: true
- name: XtremIO
id: xtremio
description: |
The Xtremio plugin gathers metrics from Dell EMC XtremIO Storage Array.
introduced: 1.22.0
tags: [networking]
- name: YouTube
id: youtube
description: |
The YouTube input plugin gathers information from YouTube channels, including views, subscribers, and videos.
introduced: 1.16.0
link: https://github.com/inabagumi/youtube-telegraf-plugin/blob/main/README.md
tags: [linux, macos, windows, external]
external: true
- name: ZFS
id: zfs
description: |
Supports: FreeBSD, Linux
The ZFS input plugin provides metrics from your ZFS filesystems.
It supports ZFS on Linux and FreeBSD.
It gets ZFS statistics from `/proc/spl/kstat/zfs` on Linux and from `sysctl` and `zpool` on FreeBSD.
introduced: 0.2.1
tags: [linux, macos, windows, systems]
########## %%%% %% %% %%%%%% %%%%% %% %% %%%%%% %%%% ##########
########## %% %% %% %% %% %% %% %% %% %% %% ##########
########## %% %% %% %% %% %%%%% %% %% %% %%%% ##########
########## %% %% %% %% %% %% %% %% %% %% ##########
########## %%%% %%%% %% %% %%%% %% %%%% ##########
output:
- name: Amazon CloudWatch
id: cloudwatch
description: |
The Amazon CloudWatch output plugin send metrics to Amazon CloudWatch.
introduced: 0.10.1
tags: [linux, macos, windows, cloud]
- name: Amazon CloudWatch logs
id: cloudwatch_logs
description: |
This output plugin sends logs to Amazon CloudWatch.
introduced: 1.19.0
tags: [amazon, cloud, logging]
- name: Amazon Kinesis
id: kinesis
description: |
The Amazon Kinesis output plugin is an experimental plugin that is still
in the early stages of development. It will batch up all of the points into
one `PUT` request to Kinesis. This should save the number of API requests
by a considerable level.
introduced: 0.2.5
tags: [linux, macos, windows, cloud, messaging]
- name: AWS Timestream
id: timestream
description: |
The Timestream output plugin writes metrics to the [Amazon Timestream](https://aws.amazon.com/timestream/) service.
introduced: 1.16.0
tags: [linux, macos, windows, cloud]
- name: Amon
id: amon
description: |
The Amon output plugin writes metrics to an [Amon server](https://github.com/amonapp/amon).
For details on the Amon Agent, see [Monitoring Agent](https://docs.amon.cx/agent/)
and requires a `apikey` and `amoninstance` URL.
If the point value being sent cannot be converted to a float64 value, the metric is skipped.
Metrics are grouped by converting any `_` characters to `.` in the Point Name.
introduced: 0.2.1
tags: [linux, macos, windows, databases]
- name: AMQP
id: amqp
description: |
The AMQP output plugin writes to an AMQP 0-9-1 exchange, a prominent implementation
of the Advanced Message Queuing Protocol (AMQP) protocol being [RabbitMQ](https://www.rabbitmq.com/).
Metrics are written to a topic exchange using `tag`, defined in configuration
file as `RoutingTag`, as a routing key.
introduced: 0.1.9
tags: [linux, macos, windows, messaging]
- name: Apache Kafka
id: kafka
description: |
The Apache Kafka output plugin writes to a [Kafka Broker](http://kafka.apache.org/07/quickstart.html)
acting a Kafka Producer.
introduced: 0.1.7
tags: [linux, macos, windows, messaging]
- name: Azure Data Explorer
id: azure_data_explorer
description: |
The Azure Data Explorer output plugin writes metrics to [Azure Data Explorer](https://azure.microsoft.com/en-au/services/data-explorer/).
introduced: 1.20.0
tags: [linux, macos, windows, cloud, datastores]
- name: Azure Event Hubs
id: event_hubs
description: |
The Azure Data Explorer output plugin writes metrics to a single Azure Event Hub within an [Event Hubs](https://azure.microsoft.com/en-gb/services/event-hubs/) namespace.
introduced: 1.21.0
tags: [linux, macos, windows, cloud, datastores]
- name: BigQuery
id: bigquery
description: |
The BigQuery output plugin writes to [Google Cloud's BigQuery](https://cloud.google.com/bigquery).
introduced: 1.18.0
tags: [linux, macos, windows, cloud]
- name: CrateDB
id: cratedb
description: |
The CrateDB output plugin writes to [CrateDB](https://crate.io/), a real-time SQL database for
machine data and IoT, using its [PostgreSQL protocol](https://crate.io/docs/crate/reference/protocols/postgres.html).
introduced: 1.5.0
tags: [linux, macos, windows, data-stores]
- name: Clarify
id: clarify
description: |
Write data to Clarify
introduced: 1.27.0
tags: [linux, macos, windows, cloud, data-stores]
- name: Datadog
id: datadog
description: |
The Datadog output plugin writes to the [Datadog Metrics API](http://docs.datadoghq.com/api/v1/metrics/)
and requires an `apikey` which can be obtained [here](https://app.datadoghq.com/account/settings#api)
for the account.
introduced: 0.1.6
tags: [linux, macos, windows, applications, cloud]
- name: Discard
id: discard
description: |
The Discard output plugin simply drops all metrics that are sent to it.
It is only meant to be used for testing purposes.
introduced: 1.2.0
tags: [linux, macos, windows]
- name: Dynatrace
id: dynatrace
description: |
The Dynatrace output plugin sends metrics to [Dynatrace](http://www.dynatrace.com).
introduced: 1.16.0
tags: [linux, macos, windows]
- name: Elasticsearch
id: elasticsearch
description: |
The Elasticsearch output plugin writes to Elasticsearch via HTTP using
[Elastic](http://olivere.github.io/elastic/).
It supports Elasticsearch releases from 5.x up to 7.x.
introduced: 0.1.5
tags: [linux, macos, windows, data-stores]
- name: Exec
id: exec
description: |
The Exec output plugin sends Telegraf metrics to an external application over `stdin`.
introduced: 1.12.0
tags: [linux, macos, windows, systems]
- name: Execd
id: execd
description: |
The Execd output plugin runs an external program as a daemon.
introduced: 1.15.0
tags: [linux, macos, windows, systems]
- name: File
id: file
description: |
The File output plugin writes Telegraf metrics to files.
introduced: 0.10.3
tags: [linux, macos, windows, systems]
- name: Google Cloud PubSub
id: cloud_pubsub
description: |
The Google PubSub output plugin publishes metrics to a [Google Cloud PubSub](https://cloud.google.com/pubsub)
topic as one of the supported [output data formats](/telegraf/v1/data_formats/output).
introduced: 1.10.0
tags: [linux, macos, windows, messaging, cloud]
- name: Graphite
id: graphite
description: |
The Graphite output plugin writes to [Graphite](http://graphite.readthedocs.org/en/latest/index.html) via raw TCP.
introduced: 0.10.1
tags: [linux, macos, windows, data-stores]
- name: Grafana Loki
id: loki
description: |
The Grafana Loki output sends logs to [Loki](https://grafana.com/oss/loki/).
introduced: 1.18.0
tags: [linux, macos, windows, logging]
- name: Graylog
id: graylog
description: |
The Graylog output plugin writes to a Graylog instance using the `gelf` format.
introduced: 1.0.0
tags: [linux, macos, windows, logging]
- name: GroundWork
id: groundwork
description: |
The GroundWork output plugin writes to a [GroundWork Monitor](https://www.gwos.com/product/groundwork-monitor/) instance.
introduced: 1.21.0
tags: [linux, macos, windows, applications, messaging]
- name: HTTP
id: http
description: |
The HTTP output plugin sends metrics in a HTTP message encoded using one of the output data formats.
For `data_formats` that support batching, metrics are sent in batch format.
introduced: 1.7.0
tags: [linux, macos, windows, applications]
- name: Health
id: health
description: |
The health plugin provides a HTTP health check resource that can be configured to return a failure status code 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.
introduced: 1.11.0
tags: [linux, macos, windows, applications]
- name: InfluxDB v1.x
id: influxdb
description: |
The InfluxDB v1.x output plugin writes to InfluxDB using HTTP or UDP.
introduced: 0.1.1
tags: [linux, macos, windows, data-stores]
- name: InfluxDB v2
id: influxdb_v2
description: |
The InfluxDB v2 output plugin writes metrics to [InfluxDB 2.x](https://github.com/influxdata/influxdb) OSS or Cloud.
introduced: 1.8.0
tags: [linux, macos, windows, data-stores]
- name: Instrumental
id: instrumental
description: |
The Instrumental output plugin writes 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 through `[[inputs.statsd]]`.
introduced: 0.13.1
tags: [linux, macos, windows, applications]
- name: IoTDB
id: iotdb
description: |
This output plugin saves Telegraf metrics to an Apache IoTDB backend,
supporting session connection and data insertion.
introduced: 1.24.0
tags: [linux, macos, windows, data-stores]
- name: Librato
id: librato
description: |
The Librato output plugin writes to the [Librato Metrics API](http://dev.librato.com/v1/metrics#metrics)
and requires an `api_user` and `api_token` which can be obtained
[here](https://metrics.librato.com/account/api_tokens) for the account.
introduced: 0.2.0
tags: [linux, macos, windows, cloud]
- name: Logz.io
id: logzio
description: |
The Logz.io output plugin sends metrics to Logz.io over HTTPs.
introduced: 1.17.0
tags: [linux, macos, windows]
- name: Microsoft Azure Application Insights
id: application_insights
description: |
The Microsoft Azure Application Insights output plugin writes Telegraf metrics to
[Application Insights (Microsoft Azure)](https://azure.microsoft.com/en-us/services/application-insights/).
introduced: 1.7.0
tags: [linux, macos, windows, cloud, applications]
- name: Microsoft Azure Monitor
id: azure_monitor
description: |
> The Azure Monitor custom metrics service is currently in preview and not
> available in a subset of Azure regions.
The Microsoft Azure Monitor output plugin sends custom metrics to
[Microsoft Azure Monitor](https://azure.microsoft.com/en-us/services/monitor/).
Azure Monitor has a metric resolution of one minute. To handle this in Telegraf,
the Azure Monitor output plugin automatically aggregates metrics into one minute buckets,
which are then sent to Azure Monitor on every flush interval.
For a Microsoft blog posting on using Telegraf with Microsoft Azure Monitor,
see [Collect custom metrics for a Linux VM with the InfluxData Telegraf Agent](https://docs.microsoft.com/en-us/azure/monitoring-and-diagnostics/metrics-store-custom-linux-telegraf).
The metrics from each input plugin will be written to a separate Azure Monitor namespace,
prefixed with `Telegraf/` by default. The field name for each metric is written
as the Azure Monitor metric name. All field values are written as a summarized set
that includes `min`, `max`, `sum`, and `count`. Tags are written as a dimension
on each Azure Monitor metric.
introduced: 1.8.0
tags: [linux, macos, windows, cloud]
- name: MongoDB
id: mongodb
description: |
The MongoDB output plugin writes to MongoDB and automatically creates the collections as time series collections when they don't already exist.
introduced: 1.21.0
tags: [linux, macos, windows, data-stores]
- name: MQTT Producer
id: mqtt
description: |
The MQTT Producer output plugin writes to the MQTT server using
[supported output data formats](/telegraf/v1/data_formats/output/).
introduced: 0.2.0
tags: [linux, macos, windows, messaging, iot]
- name: NATS Output
id: nats
description: |
The NATS Output output plugin writes to a (list of) specified NATS instance(s).
introduced: 1.1.0
tags: [linux, macos, windows, messaging]
- name: Nebius Cloud Monitoring
id: nebius_cloud_monitoring
description: |
Send aggregated metrics to Nebius.Cloud Monitoring
introduced: 1.27.0
tags: [linux, macos, windows, cloud, data-stores]
- name: New Relic
id: newrelic
description: |
The New Relic output plugin writes to New Relic insights using the [Metric API](https://docs.newrelic.com/docs/data-ingest-apis/get-data-new-relic/metric-api/introduction-metric-api).
introduced: 1.15.0
tags: [linux, macos, windows, applications, web]
- name: NSQ
id: nsq
description: |
The NSQ output plugin writes to a specified NSQD instance, usually local to the producer.
It requires a server name and a topic name.
introduced: 0.2.1
tags: [linux, macos, windows, messaging]
- name: OpenSearch
id: opensearch
description: |
The OpenSearch plugin writes metrics via HTTP to OpenSearch instances.
introduced: 1.29.0
tags: [linux, macos, windows, logging, data-stores]
- name: OpenTelemetry
id: opentelemetry
description: |
The OpenTelemetry plugin sends metrics to [OpenTelemetry](https://opentelemetry.io/) servers and agents via gRPC.
introduced: 1.20.0
tags: [linux, macos, windows, logging, messaging]
- name: OpenTSDB
id: opentsdb
description: |
The OpenTSDB output plugin writes to an OpenTSDB instance using either the telnet or HTTP mode.
Using the HTTP API is the recommended way of writing metrics since OpenTSDB 2.0.
To use HTTP mode, set `useHttp` to true in config. You can also control how many
metrics are sent in each HTTP request by setting `batchSize` in config.
See the [OpenTSDB documentation](http://opentsdb.net/docs/build/html/api_http/put.html) for details.
introduced: 0.1.9
tags: [linux, macos, windows, data-stores]
- name: Parquet
id: parquet
description: |
This plugin writes metrics to parquet files. By default, it groups metrics by name, and then writes each group to a separate file. If a metric schema doesn't match, the metrics are dropped.
introduced: 1.32.0
tags: [linux, macos, windows, data-stores]
- name: Postgre SQL
id: postgresql
description: |
The Postgre SQL output plugin writes metrics to PostgreSQL (or compatible database).
introduced: 1.24.0
tags: [linux, macos, windows]
- name: Prometheus Client
id: prometheus_client
description: |
The Prometheus Client output plugin starts a [Prometheus](https://prometheus.io/) Client,
it exposes all metrics on `/metrics` (default) to be polled by a Prometheus server.
introduced: 0.2.1
tags: [linux, macos, windows, applications]
- name: Redis time series
id: redistimeseries
description: |
The Redis time series output plugin writes metrics to the RedisTimeSeries server.
introduced: 1.24.0
tags: [linux, macos, windows, networking]
- name: Remote file
id: remotefile
description: |
This plugin writes telegraf metrics to files in remote locations using
the rclone library. Multiple backends such as Amazon S3 or SFTP are
supported.
introduced: 1.32.0
tags: [linux, macos, windows, data-stores]
- name: Riemann
id: riemann
description: |
The Riemann output plugin writes to [Riemann](http://riemann.io/) using TCP or UDP.
introduced: 1.3.0
tags: [linux, macos, windows, networking, systems]
- name: Sensu
id: sensu
description: |
The Sensu output plugin writes metrics events to [Sensu Go](https://sensu.io/).
introduced: 1.18.0
tags: [linux, macos, windows, applications]
- name: SignalFX
id: signalfx
description: |
The SignalFX output plugin sends metrics to [SignalFX](https://docs.signalfx.com/en/latest/).
introduced: 1.18.0
tags: [linux, macos, windows, applications]
- name: Socket Writer
id: socket_writer
description: |
The Socket Writer output plugin writes to a UDP, TCP, or UNIX socket.
It can output data in any of the [supported output formats](https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md).
introduced: 1.3.0
tags: [linux, macos, windows, networking]
- name: Stackdriver
id: stackdriver
description: |
The Stackdriver output plugin writes to the [Google Cloud Stackdriver API](https://cloud.google.com/monitoring/api/v3/)
and requires [Google Cloud authentication](https://cloud.google.com/docs/authentication/getting-started)
with Google Cloud using either a service account or user credentials.
For details on pricing, see the [Stackdriver documentation](https://cloud.google.com/stackdriver/pricing).
Requires `project` to specify where Stackdriver metrics will be delivered to.
Metrics are grouped by the `namespace` variable and metric key, for example
`custom.googleapis.com/telegraf/system/load5`.
introduced: 1.9.0
tags: [linux, macos, windows, cloud]
- name: Stomp (ActiveMQ)
id: stomp
description: |
The Stomp (ActiveMQ) output plugin writes to an [ActiveMQ Broker](https://activemq.apache.org/) for [STOMP](http://stomp.github.io).
introduced: 1.24.0
tags: [linux, macos, windows]
- name: SQL
id: sql
description: |
The SQL output plugin saves Telegraf metric data to an SQL database.
introduced: 1.19.0
tags: [datastores]
- name: Sumo Logic
id: sumologic
description: |
This plugin sends metrics to [Sumo Logic HTTP Source](https://help.sumologic.com/03Send-Data/Sources/02Sources-for-Hosted-Collectors/HTTP-Source/Upload-Metrics-to-an-HTTP-Source)
in HTTP messages using one of the following supported 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`
introduced: 1.16.0
tags: [linux, macos, windows, logging]
- name: Syslog
id: syslog
description: |
The syslog output plugin sends syslog messages transmitted over UDP or TCP or TLS, with or without the octet counting framing.
Syslog messages are formatted according to RFC 5424.
introduced: 1.11.0
tags: [linux, macos, windows, logging]
- name: Warp10
id: warp10
description: |
The Warp10 output plugin writes metrics to [SenX Warp 10](https://www.warp10.io/).
introduced: 1.14.0
tags: [linux, macos, windows]
- name: Wavefront
id: wavefront
description: |
The Wavefront output plugin writes to a Wavefront proxy, in Wavefront data format over TCP.
introduced: 1.5.0
tags: [linux, macos, windows, applications, cloud]
- name: Websocket
id: websocket
description: |
The Websocket output plugin can write to a WebSocket endpoint.
introduced: 1.19.0
tags: [web, servers]
- name: Yandex Cloud Monitoring
id: yandex_cloud_monitoring
description: |
The Yandex Cloud Monitoring output plugin sends custom metrics to Yandex Cloud Monitoring.
introduced: 1.17.0
tags: [linux, macos, windows]
- name: Zabbix
id: zabbix
description: |
This plugin send metrics to Zabbix via traps. It has been tested with
versions 3.0, 4.0 and 6.0. It should work with newer versions as long as
Zabbix does not change the protocol.
introduced: 1.30.0
tags: [linux, macos, windows, data-stores]
# %%%% %%%% %%%% %%%%% %%%%%% %%%% %%%% %%%%%% %%%% %%%%% %%%% #
# %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% #
# %%%%%% %% %%% %% %%% %%%%% %%%% %% %%% %%%%%% %% %% %% %%%%% %%%% #
# %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% #
# %% %% %%%% %%%% %% %% %%%%%% %%%% %% %% %% %%%% %% %% %%%% #
aggregator:
- name: BasicStats
id: basicstats
description: |
The BasicStats aggregator plugin gives `count`, `max`, `min`, `mean`, `s2`(variance),
and `stdev` for a set of values, emitting the aggregate every period seconds.
introduced: 1.5.0
tags: [linux, macos, windows]
- name: Derivative
id: derivative
description: |
The derivative aggregator plugin estimates the derivative for all fields of the aggregated metrics.
introduced: 1.18.0
tags: []
- name: Final
id: final
description: |
The final aggregator emits the last metric of a contiguous series.
A contiguous series is 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.
This is useful for getting the final value for data sources that produce discrete time series, such as procstat, cgroup, kubernetes, etc.
introduced: 1.11.0
tags: [linux, macos, windows]
- name: Histogram
id: histogram
description: |
The Histogram aggregator plugin creates histograms containing the counts of
field values within a range.
Values added to a bucket are also added to the larger buckets in the distribution.
This creates a [cumulative histogram](https://upload.wikimedia.org/wikipedia/commons/5/53/Cumulative_vs_normal_histogram.svg).
Like other Telegraf aggregator plugins, the metric is emitted every period seconds.
Bucket counts, however, are not reset between periods and will be non-strictly
increasing while Telegraf is running.
introduced: 1.4.0
tags: [linux, macos, windows]
- name: Merge
id: merge
description: |
The Merge aggregator plugin merges metrics together and generates line protocol with
multiple fields per line. This optimizes memory and network transfer efficiency.
Use this plugin when fields are split over multiple lines of line protocol
with the same measurement, tag set, and timestamp on each.
introduced: 1.13.0
tags: [linux, macos, windows]
- name: MinMax
id: minmax
description: |
The MinMax aggregator plugin aggregates `min` and `max` values of each field it sees,
emitting the aggregate every period seconds.
introduced: 1.1.0
tags: [linux, macos, windows]
- name: Quantile
id: quantile
description: |
The quantile aggregator plugin aggregates specified quantiles for each numeric field per metric it sees and emits the quantiles every designated `period`.
introduced: 1.18.0
tags: []
- name: Starlark
id: starlark
description: |
The Starlark aggregator plugin allows a user to implement a custom aggregator plugin with a [Starlark](https://github.com/google/starlark-go/blob/master/doc/spec.md) script.
introduced: 1.21.0
tags: []
- name: ValueCounter
id: valuecounter
description: |
The ValueCounter aggregator plugin counts the occurrence of values in fields
and emits the count at regular intervals of 'period' seconds.
This plugin exclusively operates on fields and doesn't affect tags.
To count specific fields, configure them using the fields configuration directive.
If no fields are specified, the plugin won't count any fields.
The results are emitted in fields, formatted as `originalfieldname_fieldvalue = count`.
ValueCounter only works on fields of the type `int`, `bool`, or `string`.
Float fields are being dropped to prevent the creating of too many fields.
introduced: 1.8.0
tags: [linux, macos, windows]
# %%%%% %%%%% %%%% %%%% %%%%%% %%%% %%%% %%%% %%%%% %%%% #
# %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% #
# %%%%% %%%%% %% %% %% %%%% %%%% %%%% %% %% %%%%% %%%% #
# %% %% %% %% %% %% %% %% %% %% %% %% %% %% %% #
# %% %% %% %%%% %%%% %%%%%% %%%% %%%% %%%% %% %% %%%% #
processor:
- name: AWS EC2 Metadata
id: aws_ec2
description: |
The AWS EC2 Metadata processor 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.
introduced: 1.18.0
tags: [linux, macos, windows, cloud]
- name: Converter
id: converter
description: |
The Converter processor plugin is used to change the type of tag or field values.
In addition to changing field types, it can convert between fields and tags.
Values that cannot be converted are dropped.
introduced: 1.7.0
tags: [linux, macos, windows]
- name: Clone
id: clone
description: |
The Clone processor plugin creates a copy of each metric to preserve the
original metric and allow modifications in the copied metric.
introduced: 1.13.0
tags: [linux, macos, windows]
- name: Date
id: date
description: |
The Date processor plugin adds the metric timestamp as a human readable tag.
introduced: 1.12.0
tags: [linux, macos, windows]
- name: Dedup
id: dedup
description: |
The Dedup processor plugin filters metrics whose field values are exact repetitions of the previous values.
introduced: 1.14.0
tags: [linux, macos, windows]
- name: Defaults
id: defaults
description: |
The Defaults processor plugin allows you to ensure certain fields will always exist with a specified default value on your metrics.
introduced: 1.15.0
tags: [linux, macos, windows]
- name: Enum
id: enum
description: |
The Enum processor plugin allows the configuration of value mappings for metric fields.
The main use case for this is to rewrite status codes such as `red`, `amber`, and `green`
by numeric values such as `0`, `1`, `2`. The plugin supports string and bool types for the field values.
Multiple Fields can be configured with separate value mappings for each field.
Default mapping values can be configured to be used for all values, which are
not contained in the value_mappings.
The processor supports explicit configuration of a destination field.
By default the source field is overwritten.
introduced: 1.8.0
tags: [linux, macos, windows]
- name: Execd
id: execd
description: |
The `execd` processor plugin executes an external program as a separate process. It pipes metrics into the process's STDIN and reads processed metrics from its STDOUT.
introduced: 1.15.0
tags: [linux, macos, windows]
- name: Filepath
id: filepath
description: |
The `filepath` processor plugin maps certain Go functions from [path/filepath](https://golang.org/pkg/path/filepath/) onto tag and field values.
introduced: 1.15.0
tags: [linux, macos, windows]
- name: Filter
id: filter
description: |
The `filter` processor allows to specify a set of rules for metrics with the ability to keep or drop those metrics.
introduced: 1.29.0
tags: [linux, macos, windows]
- name: GeoIP
id: geoip
description: |
The GeoIP processor plugin looks up IP addresses in the [MaxMind GeoLite2 database](https://dev.maxmind.com/geoip/geoip2/geolite2/) and adds the respective ISO country code, city name, latitude and longitude.
introduced: 1.18.0
link: https://github.com/a-bali/telegraf-geoip/blob/master/README.md
tags: [linux, macos, windows, external]
external: true
- name: Lookup
id: lookup
description: |
Reads specific files and apply a table of annotations to metrics.
introduced: 1.26.0
tags: [linux, macos, windows]
- name: Network Interface Name
id: ifname
description: |
The Network Interface Name processor plugin looks up network interface names using SNMP.
introduced: 1.15.0
tags: [linux, macos, windows]
- name: Noise
id: noise
description: |
The noise processor plugin is used to add noise to numerical field values. This helps users to add some noise to sensitive data by anonymizing it and further prevent linkage attacks.
introduced: 1.22.0
tags: [security]
- name: Override
id: override
description: |
The Override processor plugin allows overriding all modifications that are supported
by input plugins and aggregator plugins:
- `name_override`
- `name_prefix`
- `name_suffix`
- tags
All metrics passing through this processor will be modified accordingly.
Select the metrics to modify using the standard measurement filtering options.
Values of `name_override`, `name_prefix`, `name_suffix`, and already present
tags with conflicting keys will be overwritten. Absent tags will be created.
Use case of this plugin encompass ensuring certain tags or naming conventions
are adhered to irrespective of input plugin configurations, e.g., by `taginclude`.
introduced: 1.6.0
tags: [linux, macos, windows]
- name: Parser
id: parser
description: |
The Parser processor plugin parses defined fields containing the specified data
format and creates new metrics based on the contents of the field.
introduced: 1.8.0
tags: [linux, macos, windows]
- name: Pivot
id: pivot
description: |
The Pivot processor plugin rotates single-valued metrics into a multi-field metric.
This transformation often results in data that is easier to use with mathematical operators and comparisons.
It also flattens data into a more compact representation for write operations with some output data formats.
*To perform the reverse operation, use the [Unpivot](#unpivot) processor.*
introduced: 1.12.0
tags: [linux, macos, windows]
- name: Port Name Lookup
id: port_name
description: |
The Port Name Lookup processor plugin converts a tag containing a well-known port number to the registered service name.
introduced: 1.15.0
tags: [linux, macos, windows]
- name: Printer
id: printer
description: |
The Printer processor plugin simply prints every metric passing through it.
introduced: 1.1.0
tags: [linux, macos, windows]
- name: Regex
id: regex
description: |
The Regex processor plugin transforms tag and field values using a regular expression (regex) pattern.
If `result_key `parameter is present, it can produce new tags and fields from existing ones.
introduced: 1.7.0
tags: [linux, macos, windows]
- name: Rename
id: rename
description: |
The Rename processor plugin renames InfluxDB measurements, fields, and tags.
introduced: 1.8.0
tags: [linux, macos, windows]
- name: Reverse DNS
id: reverse_dns
description: |
The Reverse DNS processor plugin processor does a reverse-dns lookup on tags (or fields) with IPs in them.
introduced: 1.15.0
tags: [linux, macos, windows]
- name: S2 Geo
id: s2geo
description: |
The S2 Geo processor plugin adds tags with an S2 cell ID token of a specified [cell level](https://s2geometry.io/resources/s2cell_statistics.html).
Tags are used in Flux `experimental/geo` functions.
Specify `lat` and `lon` field values with WGS-84 coordinates in decimal degrees.
introduced: 1.14.0
tags: [linux, macos, windows]
- name: Scale
id: scale
description: |
Processor to scale values from a specified range into another range
introduced: 1.27.0
tags: [linux, macos, windows]
- name: SNMP lookup
id: snmp_lookup
description: |
Processor to look-up extra tags using SNMP
introduced: 1.30.0
tags: [linux, macos, windows]
- name: Split
id: split
description: |
Split a metric into one or more metrics with the specified field(s)/tag(s)
introduced: 1.28.0
tags: [linux, macos, windows]
- name: Starlark
id: starlark
description: |
The Starlark processor plugin calls a [Starlark function](https://github.com/google/starlark-go/blob/master/doc/spec.md) for each matched metric, allowing for custom programmatic metric processing.
introduced: 1.15.0
tags: [linux, macos, windows]
- name: Strings
id: strings
description: |
The Strings processor plugin maps certain Go string functions onto InfluxDB
measurement, tag, and field values. Values can be modified in place or stored
in another key.
Implemented functions are:
- `lowercase`
- `uppercase`
- `trim`
- `trim_left`
- `trim_right`
- `trim_prefix`
- `trim_suffix`
Note that in this implementation these are processed in the order that they appear above.
You can specify the `measurement`, `tag` or `field` that you want processed in each
section and optionally a `dest` if you want the result stored in a new tag or field.
You can specify lots of transformations on data with a single strings processor.
introduced: 1.8.0
tags: [linux, macos, windows]
- name: Tag Limit
id: tag_limit
description: |
The Tag Limit processor plugin preserves only a certain number of tags for any given metric
and chooses 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 or labels per metric or where high levels of
cardinality are computationally or financially expensive.
introduced: 1.12.0
tags: [linux, macos, windows]
- name: Template
id: template
description: |
The Template processor plugin applies a Go template to metrics to generate a new tag.
Primarily used to create a tag for dynamic routing to multiple output plugins
or to an output specific routing option. The template has access to each metric's measurement name,
tags, fields, and timestamp using the interface in [template_metric.go](https://github.com/influxdata/telegraf/blob/release-1.14/plugins/processors/template/template_metric.go).
introduced: 1.14.0
tags: [linux, macos, windows]
- name: Timestamp
id: timestamp
description: |
Generate a metric timestamp based on values in a metric field.
introduced: 1.31.0
tags: [linux, macos, windows]
- name: TopK
id: topk
description: |
The TopK processor plugin is a filter designed to get the top series over a period of time.
It can be tweaked to do its top `K` computation over a period of time, so spikes
can be smoothed out.
This processor goes through the following steps when processing a batch of metrics:
1. Groups metrics in buckets using their tags and name as key.
2. Aggregates each of the selected fields for each bucket by the selected aggregation function (sum, mean, etc.).
3. Orders the buckets by one of the generated aggregations, returns all metrics in the top `K` buckets, then reorders the buckets by the next of the generated aggregations, returns all metrics in the top `K` buckets, etc, etc, etc, until it runs out of fields.
The plugin makes sure not to duplicate metrics.
Note that depending on the amount of metrics on each computed bucket, more
than `K` metrics may be returned.
introduced: 1.7.0
tags: [linux, macos, windows]
- name: Unpivot
id: unpivot
description: |
The Unpivot processor plugin rotates a multi-field series into single-valued metrics.
This transformation often results in data that is easier to aggregate across fields.
*To perform the reverse operation, use the [Pivot](#pivot) processor.*
introduced: 1.12.0
tags: [linux, macos, windows]