The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →The right Telegraf input plugin depends on how your system exposes data—not on a universal popularity ranking. Use inputs.docker or inputs.kubernetes for container platforms, inputs.prometheus for metrics endpoints, inputs.snmp for network devices, inputs.mqtt_consumer for brokered messages, and inputs.statsd for applications that already send StatsD metrics. Then check where Telegraf must run, what access it needs, and how the collected data will be parsed and stored.
What Telegraf input plugins do
Inputs collect measurements from operating systems, services, devices, and APIs, then pass them into Telegraf’s processing pipeline and configured outputs. They are enabled in Telegraf’s TOML configuration. An input is a collector, not a database or visualization tool; you still need an output configured to send the resulting metrics somewhere.
Inputs do not all work the same way. Some poll a target or API, while service inputs wait for data to arrive. That difference affects where Telegraf runs, which network paths must be open, and how you troubleshoot missing metrics.
Popular Telegraf inputs at a glance
| Input | Data source and collection style | Key setup consideration |
|---|---|---|
inputs.docker |
Running containers, collected through the Docker Engine API | Telegraf must be able to access the configured Docker endpoint. |
inputs.kubernetes |
Pod and container metrics through the Kubelet API | Deploy Telegraf as a daemonset on every node; plan filters or database settings to manage cardinality. |
inputs.prometheus |
Metrics exposed in Prometheus exposition format, including node-exporter-style endpoints | Useful when a service already exposes a metrics endpoint; configure endpoint discovery and manage labels. |
inputs.promql |
Data queried from a Prometheus HTTP API | Choose this when the required data is already in Prometheus and you want to query it rather than scrape the original service. |
inputs.snmp |
OIDs and tables from network devices, polled over SNMP | Requires reachable devices, credentials, OID or MIB knowledge, and a suitable polling design. SNMP traps use the separate inputs.snmp_trap service input. |
inputs.mqtt_consumer |
Messages received from configured MQTT topics | Set broker topics and a parser/data format; topic and tag design can affect cardinality. |
inputs.statsd |
Metrics sent to a Telegraf StatsD service | Use when applications already emit StatsD packets; it receives data continuously rather than polling a target. |
inputs.influxdb / inputs.influxdb_listener |
InfluxDB v1 debug metrics or incoming Influx line-protocol writes | The listener can proxy /write; InfluxDB v2 metrics are collected through its Prometheus endpoint. |
| Database, HTTP, file, and process inputs | Data from supported databases, APIs, files, and processes | Select a plugin that matches the source protocol and authentication model. |
How the main integrations differ
Docker and Kubernetes: collect close to the container platform
The Docker input reads metrics through the Docker Engine API, so the critical setup question is whether Telegraf has permission to reach the endpoint you configured. Protect that access as you would other access to the Docker engine.
Recommended Free Tools
#1 Best Overall
Kubernetes collection is node-oriented: the documented deployment pattern is to run Telegraf as a daemonset so it can collect through each node’s Kubelet API. Broad pod and container collection can produce many distinct series, so decide which tags and fields you actually need before sending everything to a database.
Prometheus: scrape an endpoint or query Prometheus
Use inputs.prometheus when the application or exporter exposes metrics in Prometheus format. This is a natural fit for existing /metrics endpoints, including node-exporter-style endpoints. You must decide which endpoints Telegraf should scrape and consider whether labels create unnecessary series.
inputs.promql serves a different purpose: it queries a Prometheus HTTP API. Choose it when Prometheus already holds the measurements you need and querying that store is preferable to scraping each original endpoint again.
SNMP: poll network devices and plan separately for traps
inputs.snmp polls device OIDs and tables. Before configuring it, establish which OIDs matter, how the device authenticates SNMP requests, and whether Telegraf can reach the device on the network. MIB knowledge helps map OIDs to meaningful measurements. If you need to receive SNMP traps instead of polling devices, use the separate inputs.snmp_trap service input.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsMQTT and StatsD: receive data from publishers
inputs.mqtt_consumer subscribes to configured broker topics and parses incoming messages in a supported format. Topic structure influences how you can map messages into measurements and tags; overly specific or unbounded tag values can increase series cardinality.
inputs.statsd is for applications already emitting StatsD packets. Unlike an input that periodically polls a target, it runs as a service and continuously receives metrics. Confirm that the applications can reach the Telegraf listener and that their emitted metric names and dimensions fit the schema you intend to store.
Rank #2
InfluxDB and other source-specific inputs
The InfluxDB-related inputs cover different cases: inputs.influxdb can collect InfluxDB v1 debug metrics, while inputs.influxdb_listener accepts Influx line-protocol writes and can proxy the /write endpoint. For InfluxDB v2 metrics, the documented collection path is the Prometheus endpoint.
For database, HTTP, file, and process data, choose a plugin that matches both the source protocol and its authentication method. If the source returns raw text, structured documents, or queued messages, check which parser/data format is needed to turn that input into Telegraf metrics.
Free tools Windows power users keep installed
One-click scans. No signup required.
Choose a plugin by source, placement, and data shape
- Match the source interface. Identify whether the system exposes an API, a Prometheus-format endpoint, SNMP, MQTT, StatsD packets, a database connection, or files. Select the input that speaks that interface.
- Decide where Telegraf must run. Account for network reachability and local access. Docker requires access to its Engine endpoint; Kubernetes collection is deployed node by node as a daemonset; SNMP and MQTT require access to their devices or broker.
- Verify permissions and credentials. Check endpoint access, API authentication, database credentials, broker credentials, or device SNMP settings as applicable. A configured plugin cannot collect data from a source it cannot reach or authenticate to.
- Plan parsing and schema. For inputs carrying files, HTTP responses, or messages, configure the parser/data format that matches the payload. Decide which parts become measurements, fields, and tags before writing the data.
- Review cardinality before broad collection. Filter unneeded tags and fields, particularly for Kubernetes inventories and high-volume message topics. More distinct tag combinations can create more series in the destination database.
- Confirm the output. Configure a Telegraf output for the destination you want. An input collects and passes metrics along; it does not, by itself, store or visualize them.
What to use when there is no dedicated plugin
A missing source-specific plugin does not automatically rule out Telegraf. The official guide identifies several alternatives:
- Use
execorexecdwhen a command or external process can expose the data in a format Telegraf can parse. - Use
fileortailwhen the source writes metrics or structured data to files. - Use an HTTP polling or listening input when the system can provide data over HTTP in a supported format.
- Consider an external plugin when an existing integration meets your needs, or implement a plugin if you need a maintained, source-specific collector.
Telegraf plugins are registered implementations of the telegraf.Input interface and provide sample configuration. Service inputs such as StatsD run a background service, so they have different implementation requirements from inputs that periodically gather data.
Is there a single “most popular” Telegraf input?
The official documentation does not provide an adoption percentage or popularity ranking for input plugins. “Popular” is therefore most useful as a description of common integration needs, not as a league table. Docker and Kubernetes suit container environments; Prometheus suits exposition endpoints or Prometheus-backed data; SNMP suits network management; and MQTT or StatsD suit systems that publish telemetry through those protocols.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

