插件目录
Telegraf 是一个插件驱动的代理,用于收集、处理、聚合和写入指标。它支持四类插件:输入(input)、输出(output)、聚合器(aggregator)和处理器(processor)。除了内置插件外,您还可以运行与 Telegraf Execd 处理器插件集成的外部插件。
插件类型
插件类别
操作系统
状态
跳转到
输入插件
Telegraf 输入插件与 InfluxData 时间序列平台结合使用,用于从系统、服务或第三方 API 收集指标。
Aerospike
此插件查询 Aerospike 服务器以获取节点统计信息以及所有配置命名空间的统计信息。
从 1.30 版本开始,Aerospike 插件已弃用,转而使用 prometheus 插件和官方支持的 Aerospike Prometheus Exporter。
有关测量均值(mean)的详细信息,请参阅 Aerospike 指标参考文档。
指标名称中的连字符 (-) 将被替换为下划线 (_),以便查询更一致、更轻松。
所有指标都将按顺序尝试转换为整数,然后是布尔值,最后是字符串。
阿里云监控服务 (Aliyun)
此插件从 阿里云/Aliyun 云监控服务收集统计信息。在下面的描述中,我们将使用 Aliyun 而不是 Alibaba,因为这是 Web 控制台和文档中的默认命名。
AMQP 消费者
此插件从 Advanced Message Queuing Protocol v0.9.1 代理消耗消息。此协议的一个突出实现是 RabbitMQ。
使用配置的队列和绑定键从主题交换(topic exchange)读取指标。消息负载必须采用支持的 数据格式之一。
如需入门,请查看 AMQP 概念页面和 RabbitMQ 入门指南。
Apache
此插件使用 mod_status 模块从 Apache HTTP 服务器收集性能信息。通常,此模块配置为在服务器的 /server-status?auto 端点公开一个页面。
为了收集所有可用字段,必须启用 ExtendedStatus 选项。有关服务器配置的信息,请查看 模块文档。
APC UPSD
此插件通过 NIS 网络协议从一个或多个 apcupsd 守护进程收集数据。要查询服务器,必须运行并可访问该守护进程。
Apache Aurora
此插件从 Apache Aurora 调度器收集指标。有关监控建议,请查看 监控您的 Aurora 集群文章。
Azure Monitor
此插件使用 Azure Monitor API 收集 Azure 资源的指标。该插件需要 client_id、client_secret 和 tenant_id 来通过访问令牌进行身份验证。访问 Azure 资源需要 subscription_id。
有关支持的资源类型及其指标,请查看 支持的指标页面。
Azure API 的读取限制为每小时 12,000 次请求。请确保您配置的间隔内的总指标数不会超出此限制。
Azure Queue Storage
此插件从 Azure 队列存储服务收集队列大小,该服务存储大量消息。
Beanstalkd
此插件从 Beanstalkd 工作队列收集服务器统计信息以及队列统计信息,这些信息由 stats 和 stats-tube 服务器命令报告。
BIND 9 Name Server
此插件使用 XML 或 JSON 端点从 BIND 9 名称服务器收集指标。
对于XML,支持版本 2(BIND 9.6 至 9.9)和版本 3(BIND 9.9+)的统计信息。版本 3 统计信息是 BIND 9.10+ 的默认且唯一支持的 XML 格式。
为了让 BIND 9.9 支持版本 3 统计信息,它必须使用 --enable-newstats 编译标志构建,并且必须通过正确的 URL 指定统计信息。
对于JSON,支持版本 1(BIND 9.10+)的统计信息。撰写本文时,一些发行版尚未在其 BIND 包中启用 JSON 统计信息支持。
Bond
此插件使用 /proc/net/bonding/* 文件收集网络 bond 接口及其从属接口的指标。
Burrow
此插件通过 HTTP API 从 Burrow - Kafka Consumer Lag Checking 伴侣收集 Kafka 主题、消费者和分区状态。支持 Burrow v1.x 版本。
Ceph Storage
此插件从 Ceph 存储集群中的 MON 和 OSD 节点收集性能指标。Telegraf 的支持是在 v13.x Mimic 版本中引入的,其中数据发送到套接字(请参阅 其文档)。
Control Group
此插件收集每个 控制组 (cgroup) 的统计信息。
如果您有大量的 cgroup,请考虑将路径限制为您感兴趣的 cgroup 集合,以避免基数问题。
该插件支持单值格式,形式如下:
换行符分隔值格式,形式如下:
空格分隔值格式,形式如下:
以及空格分隔键值、换行符分隔格式,形式如下:
chrony
此插件查询 chrony NTP 服务器的指标。有关收集字段含义的详细信息,请查看 chronyc 手册。
Cisco Model-Driven Telemetry (MDT)
此插件通过 TCP 或 GRPC 消耗来自 Cisco IOS XR、IOS XE 和 NX-OS 平台的 Cisco 模型驱动遥测 (MDT) 数据。基于 GRPC 的传输可以使用 TLS 进行身份验证和加密。遥测数据预计为 GPB-KV(自描述 GPB)编码。
GRPC 拨号传输支持各种 IOS XR (64 位) 6.1.x 及更高版本、IOS XE 16.10 及更高版本以及 NX-OS 7.x 及更高版本平台。TCP 拨号传输支持 IOS XR (32 位和 64 位) 6.1.x 及更高版本。
ClickHouse
此插件从 ClickHouse 服务器收集统计数据。Clickhouse Cloud 的用户将看不到 Zookeeper 指标,因为他们可能没有权限查询这些表。
Google Cloud PubSub
此插件从 Google Cloud PubSub 服务消耗消息,并使用支持的 数据格式之一创建指标。
Google Cloud PubSub Push
此插件监听来自 Google Cloud PubSub 的 HTTP POST 请求发送的消息,并期望消息采用 Google 的 Pub/Sub JSON 格式。该插件允许 Telegraf 作为推送服务的一个端点。
Google 的 PubSub 服务仅通过 HTTPS/TLS 发送,因此此插件必须位于有效的代理后面,或者必须通过设置 tls_cert 和 tls_key 来配置使用 TLS。
通过在 tls_allowed_cacerts 中包含允许的 CA 证书文件名列表,启用相互身份验证 TLS 并授权客户端连接。
Amazon CloudWatch 统计
此插件将从 Amazon CloudWatch 收集指标统计信息。
Amazon CloudWatch 指标流
此插件监听 Cloudwatch 指标流通过 HTTP 发送的指标,并实现所需的 响应规范。
使用此插件可能会产生费用,请参阅 CloudWatch 定价中的指标流示例。
Netfilter Conntrack
此插件从 Netfilter 的 conntrack 工具收集指标。该插件有两种收集机制:
- 如果
collect选项已相应设置以查找特定于 CPU 的值,则从/proc/net/stat/nf_conntrack文件中提取信息。 - 通过指定
dirs选项使用特定文件和目录。在运行时,conntrack 在/proc/sys/net中公开许多连接统计信息。根据您的内核版本,这些文件可能位于/proc/sys/net/ipv4/netfilter或/proc/sys/net/netfilter中,并且会以ip或nf作为前缀。
为了简化异构环境中的配置,可以指定目录和文件名的一个超集。任何不存在的位置都将被忽略。
Hashicorp Consul
此插件将使用 Consul API 收集关于 Consul 中注册的所有健康检查的统计信息。该插件不会报告任何 遥测指标,但 Consul 可以使用 StatsD 协议报告这些统计信息(如果需要)。
Apache CouchDB
此插件使用 stats 端点从 Apache CouchDB 实例收集指标。
CPU
此插件收集系统 CPU 的指标。
Counter-Strike Global Offensive (CSGO)
此插件从 Counter-Strike: Global Offensive 服务器收集指标。
Bosch Rexroth ctrlX Data Layer
此插件从 ctrlX 数据层收集数据,这是运行在 Bosch Rexroth 的 ctrlX CORE 设备上的通信中间件。该平台用于专业的自动化应用,如工业自动化、楼宇自动化、机器人、IoT 网关或作为传统的 PLC。
Mesosphere Distributed Cloud OS
此输入插件从 分布式云操作系统 (DC/OS) 集群的 指标组件收集指标。
取决于您的 DC/OS 集群的工作负载,此插件可能会快速创建大量序列,如果不加以控制,可能会对您的数据库造成高负载!
Directory Monitor
此插件监视单个目录(遍历子目录),并处理放入目录中的每个文件。该插件将在配置的间隔内收集目录中的所有文件,并解析尚未被读取的文件。
文件不应被其他进程使用,否则插件可能会失败。此外,文件不应在实时写入被监视的目录。如果您必须直接写入文件,则必须确保在 directory_duration_threshold 之前写入完成。
Disk
此插件收集磁盘使用情况的指标。
used_percent 字段是通过 used / (used + free) 计算得出的,而不是像 Unix df 命令那样使用 used / total。有关更多详细信息,请参阅 Wikipedia - df。
DiskIO
此插件收集磁盘流量和时间的指标。
Device Mapper Cache
此插件为 dm-cache 提供基于 dmsetup 的统计信息的原生收集。
此插件需要超级用户权限!请确保 Telegraf 能够使用 sudo 无密码运行 sudo /sbin/dmsetup status --target cache 或通过运行 root 用户 telegraf(不推荐)。
DNS Query
此插件收集有关 DNS 查询的信息,例如响应时间和结果代码。
Docker Log
此插件使用 Docker Engine API 收集正在运行的 Docker 容器的日志。
此插件仅适用于使用 local、json-file 或 journald 日志驱动程序的容器。请确保 Telegraf 具有访问配置的端点的足够权限。
Dovecot
此插件使用 Dovecot 的 v2.1 统计协议从 Dovecot 服务器收集有关配置域的指标。您可以在 Dovecot 版本最高到 v2.3.x 上使用此插件。
Dovecot v2.4+ 已移除旧协议,此插件将无法正常工作。对于新版本的 Dovecot,请使用 Dovecot 的 Openmetrics 导出器,并结合 http 输入插件和 openmetrics 数据格式。
Data Plane Development Kit (DPDK)
此插件收集由使用 数据平面开发工具包 (Data Plane Development Kit) 构建的应用程序公开的指标,这是一个用于加速数据包处理工作负载的广泛开源库。
由于 DPDK 很可能以 root 权限运行,DPDK 公开的遥测套接字也将需要 root 访问权限。请相应地调整权限!
有关 DPDK 在应用程序中使用详情和示例,请参阅 遥测用户指南。
此插件使用 v2 接口读取应用程序的遥测数据,并需要 DPDK 版本 v20.05 或更高版本。某些指标可能需要更高版本。推荐版本,特别是结合 in_memory 选项时,是 DPDK 21.11.2 或更高版本。
Amazon Elastic Container Service
此插件使用 Amazon ECS 元数据以及 v2 或 v3 统计信息 API 端点,从 Amazon Elastic Container Service 收集运行在任务中的容器的统计信息。
Telegraf 容器必须在与其检查的工作负载相同的任务中运行。
Amazon-ecs-agent(虽然它是一个在主机上运行的容器)不在元数据/统计信息端点中。
Elasticsearch
此插件查询 Elasticsearch 实例的端点以获取 节点统计信息,并可选地获取 集群健康指标。此外,该插件能够查询主节点的 集群、索引和分片统计信息。
特定统计信息在 Elasticsearch 版本之间可能有所不同。总的来说,该插件试图保持版本通用性,仅标记高级类别,并为提供的中低级统计名称创建唯一的字段名。
Elasticsearch Query
此插件允许查询 Elasticsearch 实例以获取存储在集群中的数据指标。该插件支持计算搜索查询的命中次数,计算数值字段的统计信息,按查询过滤,按标签聚合,以及计算特定字段的术语数量。
此插件支持 Elasticsearch 5.x 和 6.x,但已知在 7.x 或更高版本上会中断。
Ethtool
此插件收集以太网设备统计信息。可用信息在很大程度上取决于网络设备和驱动程序。
Azure Event Hub 消费者
此插件允许从 Azure 事件中心 (Azure Event Hubs) 和 Azure IoT Hub 实例消耗消息。
Execd
此插件将给定的外部程序作为长期运行的守护进程运行,并在进程的 stdout 上以支持的 数据格式之一收集指标。该程序应保持运行,并在接收到配置的 signal 时输出数据。
进程的 stderr 输出将被中继到 Telegraf 的日志记录设施,默认情况下将记录为错误。但是,您可以通过在消息前加上 E! 表示错误、W! 表示警告、I! 表示信息、D! 表示调试和 T! 表示跟踪级别,后跟一个空格和实际消息来记录到其他级别。例如,输出 I! A log message 将在您的 Telegraf 日志输出中创建一条信息日志行。
Fail2ban
此插件通过运行 fail2ban-client 命令,收集使用 fail2ban 失败和被禁止的 IP 地址计数。
fail2ban-client 需要 root 访问权限,因此请确保允许 Telegraf 使用 sudo 无密码运行该命令,或者通过运行 root 用户 telegraf(不推荐)来执行。
Fibaro
此插件从连接到 Fibaro 控制器的设备收集数据。这些值可以是开关的 true (1) 或 false (0),调光器的百分比,温度等。支持Home Center 2和Home Center 3设备。
Filecount
此插件报告指定目录中文件的数量和总大小。
File statistics
此插件收集有关文件存在性、大小和其他文件统计信息的指标。
AWS Data Firehose
此插件监听 AWS Data Firehose 通过 HTTP 发送的指标,并使用支持的 数据格式之一。该插件严格遵循官方 文档中描述的请求-响应模式。
Fluentd
此插件收集 fluentd 实例的内部指标,这些指标由 fluentd 的 monitor agent 插件提供。不包括 /api/plugin.json 资源和 /api/config.json 提供的数据。
此插件可能会生成高基数序列,因为 plugin_id 值在 fluentd 每次重启后都是随机的。如果您的 fluentd 频繁重启,您可能需要调整 fluentd 配置,通过为每个插件添加 @id 参数来减少序列基数。有关详细信息,请参阅 fluentd 的文档。
gNMI (gRPC Network Management Interface)
此插件基于 gNMI 订阅消耗遥测数据。支持 TLS 进行身份验证和加密。此插件与供应商无关,并且支持任何支持 gNMI 规范的平台。
对于 Cisco 设备,该插件已针对支持 Cisco IOS XR (64 位) 6.5.1、Cisco NX-OS 9.3 和 Cisco IOS XE 16.12 及更高版本生成的 gNMI 遥测进行了优化。
Google Cloud Storage
此插件将以支持的 数据格式之一,从指定的 Google Cloud Storage 存储桶收集指标。
GrayLog
此插件从 Graylog 服务器收集数据,目前支持两种类型的端点:multiple(例如 http://<host>:9000/api/system/metrics/multiple)和 namespace(例如 http://<host>:9000/api/system/metrics/namespace/{namespace})。
可以查询多个端点,并且可以混合使用 multiple 和多个 namespace 端点。请查看 http://<host>:9000/api/api-browser 以获取可用端点的完整列表。
当指定不带实际命名空间的 namespace 端点时,指标数组将被忽略。
HDDtemp
此插件从 hddtemp 守护进程读取数据。
此插件要求安装并运行 hddtemp 作为守护进程。
由于上游项目不再积极维护,并且各种发行版(例如 Debian Bookworm 及更高版本)不再提供 hddtemp 的软件包,因此该二进制文件可能不再可用(例如,在 Ubuntu 22.04 或更高版本中)。
HTTP Listener v2
此插件监听通过 HTTP 发送的、采用任何支持的 数据格式 的指标。
如果您希望 Telegraf 作为 InfluxDB v1 或 InfluxDB v2 的代理/中继,建议改用 influxdb__listener 或 influxdb_v2_listener 插件。
HTTP Response
此插件从 HTTP 响应中生成指标,包括状态码和响应统计信息。
HueBridge
此插件使用设备的 CLIP API 接口,从 Hue Bridge 设备收集状态。
Hugepages
此插件从 Linux 的 透明大页 (THP) 内存管理系统 收集指标,该系统通过集成 e.g. 减少具有大量内存的机器上 Translation Lookaside Buffer (TLB) 查找的开销。
Icinga2
此插件使用 Icinga2 远程 API 收集服务和主机状态信息。
InfiniBand
此插件收集系统中所有 InfiniBand 设备和端口的统计信息。这些计数器可以在 /sys/class/infiniband/<dev>/port/<port>/counters/ 中找到,RDMA 计数器可以在 /sys/class/infiniband/<dev>/ports/<port>/hw_counters/ 中找到。
InfluxDB
此插件从指定的 InfluxDB v1 服务器的 /debug/vars 端点收集指标。阅读 文档 以获取关于 influxdb 指标的详细信息。
此外,此插件还可以从公开 InfluxDB 格式化端点的端点收集指标。
要收集 InfluxDB v2 指标,请使用 prometheus 插件 配合 [[inputs.prometheus]] urls = [“https://:8086/metrics”] metric_version = 1。
InfluxDB Listener
此插件监听根据 InfluxDB HTTP v1 API 发送的请求。这允许 Telegraf 作为 InfluxDB HTTP API 的 /write 端点的代理/路由器。
此插件以前称为 http_listener。如果您希望通过 HTTP 发送通用指标,建议改用 http_listener_v2。
/write 端点支持 precision 查询参数,可以设置为 ns、u、ms、s、m、h 之一。所有其他参数都将被忽略,并由输出插件的配置决定。
当链式连接 Telegraf 实例使用此插件时,CREATE DATABASE 请求将收到 200 OK 响应,消息体为 {"results":[]},但它们不会被中继。最终将数据提交到 InfluxDB 的输出插件的配置决定了目标数据库。
InfluxDB V2 Listener
此插件监听根据 InfluxDB HTTP v2 API 发送的请求。这允许 Telegraf 作为 InfluxDB HTTP API 的 /api/v2/write 端点的代理/路由器。
/api/v2/write 端点支持 precision 查询参数,可以设置为 ns、us、ms、s 之一。所有其他参数都将被忽略,并由输出插件的配置决定。
Intel Baseband Accelerator
此插件从专用的和集成的 Intel 设备收集指标,这些设备提供无线基带硬件加速。这些设备在加速 5G 和 4G 虚拟化无线接入网络 (vRAN) 工作负载方面发挥着关键作用,通过集成 e.g. 提高了商用现成 (COTS) 平台的整体计算能力。
- 前向纠错 (FEC) 处理,
- 4G Turbo FEC 处理,
- 5G 低密度奇偶校验码 (LDPC)
- 快速傅里叶变换 (FFT) 块,为 5G 探测参考信号 (SRS) 提供 DFT/iDFT 处理卸载。
Intel® Dynamic Load Balancer
此插件收集通过 数据平面开发套件 构建的应用程序公开的指标。这是一个用于加速数据包处理工作负载的开源库的广泛集合,插件还使用了分叉驱动程序。更具体地说,它针对通过分叉驱动程序(允许从内核和用户空间访问)访问 Intel DLB 作为 eventdev 设备的应用程序。
Intel® Platform Monitoring Technology
此插件通过 Linux 内核驱动程序收集 Intel® 平台监控技术 (Intel® PMT) 的指标。Intel® PMT 是一种能够枚举和访问支持设备上硬件监控功能的架构。
Intel Performance Monitoring Unit
此插件收集可通过 Linux Perf 子系统获得的 Intel 性能监控单元指标。
PMU 指标可提供对 IA 处理器内部组件(包括核心和非核心单元)性能和运行状况的洞察。随着核心数量的增加和处理器拓扑变得越来越复杂,对这些指标的洞察对于确保最佳 CPU 性能和利用率至关重要。
性能计数器是 CPU 硬件寄存器,用于计算硬件事件,例如执行的指令、缓存未命中或分支预测错误。它们是分析应用程序以跟踪动态控制流和识别热点的基础。
Intel PowerStat
此插件收集 Intel 平台上的电源统计信息,提供对节能和工作负载迁移的洞察。这些对于监控和分析系统根据平台繁忙程度、CPU 温度、实际 CPU 利用率和电源统计信息采取预防性或纠正性措施非常有用。
Intel RDT
此插件收集由 Intel Resource Director Technology 的监控功能提供的信息。Intel Resource Director Technology 是一种硬件框架,用于监控和控制共享资源(例如最后一级缓存、内存带宽)的使用情况。
Intel 的资源目录技术 (RDT) 框架包括:
- 缓存监控技术 (CMT)
- 内存带宽监控 (MBM)
- 缓存分配技术 (CAT)
- 代码和数据优先级 (CDP)
随着多线程和多核平台架构的出现,最后一级缓存和内存带宽是管理单线程、多线程或复杂虚拟机环境中运行的工作负载的关键资源。Intel 引入了 CMT、MBM、CAT 和 CDP 来管理这些跨共享资源的工作负载。
Telegraf Internal
此插件收集有关 telegraf 代理及其插件的指标。
一些指标是所有插件实例类型的聚合。
Internet Speed Monitor
此插件使用 speedtest.net 服务 收集有关系统互联网速度的指标,如下载/上传速度、延迟等。
Interrupts
此插件从中断 (/proc/interrupts) 和软中断 (/proc/softirqs) 收集有关 IRQ 的指标。
Iptables
此插件从 Linux 的 iptables 防火墙中,收集一组表和链中规则的数据包和字节计数器。
规则通过关联的注释进行标识,因此您必须确保要监控的规则在添加时使用了 --comment 标志具有**唯一**的注释。没有注释的规则将被忽略。
规则编号不能用作标识符,因为它不是恒定的,并且在启动时插入/删除规则时可能会有所不同(或由自动工具(交互式防火墙、fail2ban 等)更改)。
iptables 命令需要 CAP_NET_ADMIN 和 CAP_NET_RAW 能力。请查看权限部分以获取授予这些能力的途径。
IPVS
此插件使用 Linux 内核的 netlink 套接字接口,收集有关 IPVS 虚拟服务器和真实服务器 的指标。
该插件需要 CAP_NET_ADMIN 和 CAP_NET_RAW 能力。请查看权限部分以获取授予这些能力的途径。
Jolokia2 Agent
此插件从一个或多个 Jolokia 代理 REST 端点读取 JMX 指标。
Jolokia2 Proxy
此插件通过与 Jolokia 代理 REST 端点进行交互,从一个或多个*目标*读取 JMX 指标。
Juniper Telemetry
此服务插件通过 Junos 遥测接口 (JTI) 从配置的传感器读取 Junos 遥测接口 (JTI) 中的 OpenConfig 遥测数据。
Apache Kafka 消费者
此服务插件在支持的 数据格式 之一中,从 Kafka 代理 消费消息。该插件在与 Kafka 集群通信时使用 消费者组,因此 Telegraf 的多个实例可以并行消费同一主题的消息。
Kapacitor
此插件从配置的 InfluxData Kapacitor 实例收集指标。
Kernel VM Statistics
此插件通过读取 /proc/vmstat 来收集 Linux 内核 的虚拟内存统计信息。有关可用字段的完整列表,请参阅 proc 手册页的 /proc/vmstat 部分,有关字段的详细描述,请参阅 vmstat 手册页。
Kinesis Consumer
此服务输入插件以支持的 数据格式 之一,从 AWS Kinesis 数据流消费消息。
KNX
此服务插件通过 KNX-IP 接口连接,监听 KNX 家庭自动化总线 上的消息。有关支持的 KNX 数据点类型的信息可以在底层 knx-go 项目 中找到。
Kubernetes Inventory
此插件从 Kubernetes 资源收集指标。
此插件需要 Kubernetes 版本 1.11+。
收集的资源包括例如守护进程集、部署、端点、入口、节点、持久卷等等。
此插件会产生高基数数据,如果不加以控制,将对数据库造成高负载。请务必过滤生成的指标或配置您的数据库以避免基数问题!
Kubernetes
此插件通过 Kubelet API 收集关于 Kubernetes 实例中运行的 Pod 和容器的指标。
此插件必须作为 daemonset 的一部分在 Kubernetes 安装中运行。Telegraf 必须在集群中的每个节点上运行。
您应该配置此插件以连接到本地运行的 kubelet。
此插件会产生高基数数据,如果不加以控制,将对数据库造成高负载。请务必过滤生成的指标或配置您的数据库以避免基数问题!
Arista LANZ 消费者
此服务插件通过在交换机的管理 IP 上接收 TCP(通常通过端口 50001)上的数据流,从 Arista Networks 的延迟分析器 (LANZ) 消费消息。
您需要配置 LANZ 并启用流式传输 LANZ 数据,有关更多详细信息,请参阅文档。
LeoFS
此插件通过 SNMP 收集 LEO 文件系统服务LeoGateway、LeoManager和LeoStorage的指标。有关详细信息,请参阅LeoFS 系统监控文档。
Linux CPU
此插件收集 Linux 系统上公开的 CPU 指标。
Lustre
此插件使用 Lustre® 文件系统在 proc 文件系统中的条目来收集指标。有关报告的信息,请参考Lustre 监控和统计指南。
此插件不报告所有可用信息,只报告有限的项目集。请查看指标部分。
Logical Volume Manager
此插件从 Linux 内核的逻辑卷管理 (LVM) 收集有关物理卷、卷组和逻辑卷的信息。
Mailchimp
此插件使用 Mailchimp API 从 Mailchimp 服务收集指标。
MavLink
此插件从 MavLink 兼容的飞行控制器(如 ArduPilot 或 PX4)收集指标,以实时摄取无人驾驶系统(无人机、飞机、船只等)的飞行指标。目前使用 ArduPilot 特定的 Mavlink 方言,有关更多详细信息和可用消息,请参阅Mavlink 文档。
此插件可能生成大量数据。如果您的输出插件无法处理消息速率,请使用指标过滤器限制写入输出的指标,和/或使用 filters 配置参数限制此插件解析哪些 Mavlink 消息。
MD RAID Statistics
此插件通过读取 /proc/mdstat 来收集有关主机上配置的任何 Linux MD RAID 阵列 的统计信息。有关可用字段的完整列表,请参阅 proc 手册页的 /proc/mdstat 部分。有关字段的详细信息,请参阅 mdstat wiki。
Apache Mesos
此插件从 Apache Mesos 实例收集指标。有关更多信息,请参阅Mesos 可观测性指标页面。
Minecraft
此插件使用 RCON 协议从 Minecraft 服务器收集分数指标。
此插件支持 Minecraft Java 版 1.11 - 1.14。当使用早于 1.13 的版本时,请注意,某些标准的相应值已更改,需要进行修改。
Mock Data
该插件根据正弦波函数、随机数等不同算法生成模拟指标,并使用配置的名称和标签。这些指标在测试(例如处理器)或需要随机数据时很有用。
Monit
此插件收集有关本地进程、远程主机、文件、文件系统、目录和网络接口的指标和状态信息,这些由 Monit 管理和监视。
该插件支持 Monit 版本 5.16+。要使用此插件,您必须在 Monit 中启用 HTTPD TCP 端口。
Multifile
此插件将多个文件的组合数据读取到一个度量中,为每个文件创建一个字段或标签。这通常有助于从 /sys 或 /proc 文件系统中创建自定义指标。
要解析单个文件的指标,您应该改用 file 输入插件。
NATS Consumer
此服务插件以支持的 数据格式 之一,消费 NATS 实例的消息。在订阅主题时使用 队列组,以便 Telegraf 的多个实例可以并行消费消息。该插件支持通过用户名/密码、凭证文件(NATS 2.0)或nkey 种子文件(NATS 2.0)进行身份验证。
Neoom Beaam
此插件使用在 Neoom 网站界面中创建的访问令牌,通过 Beaam API 从 Neoom Beaam 网关收集指标。请遵循开发人员说明来创建令牌。
Neptune Apex
此插件从 Neptune Apex 控制器 实例收集指标,允许水族爱好者根据各种探头监控和控制他们的水箱。
Network
此插件收集有关网络接口和协议使用情况的指标。
Network Response
此插件测试 UDP/TCP 连接并从结果中生成指标,包括响应时间,并可选择验证响应中的文本。
Netflow
此服务插件充当 Netflow v5、Netflow v9 和 IPFIX 流信息的收集器。第 4 层协议号从官方 IANA 分配中获取。Netflow v5 字段的内部字段映射根据思科的 Netflow v5 文档定义,Netflow v9 字段根据思科的 Netflow v9 文档和ASA 扩展定义。IPFIX 的定义根据IANA 分配文档。
Network Connection Statistics
此插件收集有关 TCP 连接状态和 UDP 套接字计数的统计信息。
Network Filesystem
此插件收集有关 网络文件系统 挂载上操作的指标。默认情况下,只收集有限数量的通用系统级指标,包括基本的读/写计数,但可以启用更详细的指标。
许多指标,即使带有挂载点标签,实际上是*每个服务器*的。例如,如果您挂载了两个共享:nfs01:/vol/foo/bar 和 nfs01:/vol/foo/baz,那么在 /proc/self/mountstats 中将有两个几乎相同的条目。这是内核公开指标的一个限制,而不是此插件的限制。
Nginx
此插件从开源 Nginx Web 服务器收集指标。Nginx Plus 是一个商业版本。有关 Nginx (F/OSS) 和 Nginx Plus 之间差异的更多信息,请参阅 Nginx 文档。
Nginx Plus
此插件通过 状态模块从商业 Nginx Plus Web 服务器收集指标。
使用此插件需要许可证。
有关 Nginx (F/OSS) 和 Nginx Plus 之间差异的更多信息,请参阅 Nginx 文档。
Nginx Plus API
此插件通过 REST API 从商业 Nginx Plus Web 服务器收集指标。
使用此插件需要许可证。
有关 Nginx (F/OSS) 和 Nginx Plus 之间差异的更多信息,请参阅 Nginx 文档。
Nginx Stream Server Traffic
此插件使用 外部流服务器流量状态模块从 Nginx Web 服务器收集指标。该模块提供对流主机状态信息的访问,其中包含服务器、上游和缓存的当前状态,类似于 Nginx Plus 的实时活动监控。有关模块配置的详细信息,请参阅模块文档。
Nginx Upstream Check
此插件使用 上游检查模块从 Nginx Web 服务器收集指标。该模块定期向 Nginx 的上游服务器发送配置的请求,以确定它们的可用性。
Nginx Virtual Host Traffic
此插件使用 外部虚拟主机流量状态模块从 Nginx Web 服务器收集指标。该模块提供对虚拟主机状态信息的访问,其中包含服务器、上游和缓存的当前状态,类似于 Nginx Plus 的实时活动监控。有关模块配置的详细信息,请参阅模块文档。
NLnet Labs Name Server Daemon
此插件从 NLnet Labs 名称服务器守护进程(一个权威 DNS 名称服务器)收集统计信息。
Netgear Switch Discovery Protocol
此插件通过 Netgear Switch Discovery Protocol 从所有可用交换机和端口收集指标。
Kernel Network Statistics
此插件从 /proc/net/netstat、/proc/net/snmp 和 /proc/net/snmp6 文件收集网络指标。
Nvidia System Management Interface (SMI)
此插件使用 NVIDIA 系统管理接口,收集有关 NVIDIA GPU 的指标,包括内存和 GPU 使用率、温度等。
此插件需要在系统上安装 nvidia-smi 二进制文件。
OpenSearch Query
此插件查询 OpenSearch 端点,以从存储在 OpenSearch 集群中的数据中派生指标,例如搜索查询的命中次数、数值字段的统计信息、文档计数等。
此插件已针对 OpenSearch 2.5.0 和 1.3.7 进行测试,但较新版本也应该有效。
OpenSMTPD
此插件使用 smtpctl 二进制文件从 OpenSMTPD 收集统计信息。
smtpctl 二进制文件必须存在于系统上,并且 Telegraf 可以执行它。该插件支持使用 sudo 进行执行。
OpenStack
此插件从 OpenStack 端点收集有关服务的数据。
由于该插件生成的唯一标签数量众多,因此**强烈建议**使用指标过滤(如 taginclude 和 tagexclude)来降低基数。
OpenTelemetry
此服务插件通过 gRPC 接收来自 OpenTelemetry 客户端和兼容代理的跟踪、指标、日志和配置文件。
Telegraf v1.32 至 v1.35 支持使用 v1 实验性 API 的配置文件信号。Telegraf v1.36 在 v0.1.0 之前支持使用 v1 开发 API 的配置文件信号。Telegraf v1.37+ 支持使用 v1 开发 API v0.2.0 的配置文件信号。
P4 Runtime
此插件通过读取设备上运行的 P4 程序的 Counter 值,从网络设备(如可编程交换机或可编程网卡)的数据平面收集指标。通过与 P4 runtime 服务器的 gRPC 连接来收集指标。
如果您想收集有关程序名称的信息,请按照 6.2.1. 使用 PkgInfo 注释 P4 代码 中的说明修改您的 P4 程序。
Passenger
此插件收集来自 Phusion Passenger 服务的指标。
根据您的环境,此插件可能会创建大量序列,从而对数据库造成高负载。请使用 度量过滤 来管理您的序列基数!
该插件使用 passenger-status 命令行工具。
此插件要求 passenger-status 二进制文件已安装在系统上,并且 Telegraf 可以执行它。
PF
此插件收集有关 FreeBSD 或 OpenBSD pf 防火墙的信息,例如表中当前条目的数量,使用 pfctl 命令对表的搜索、插入和删除次数的计数器。
此插件要求 pfctl 二进制文件可由 Telegraf 执行。它需要读取设备文件 /dev/pf 的权限。
PHP-FPM
此插件使用 HTTP 状态页或 fpm 套接字收集 PHP FastCGI 进程管理器 的统计信息。
Ping
此插件收集有关 ICMP ping 数据包的指标,包括往返时间、响应时间和数据包统计信息。
在使用 exec 方法时,ping 命令必须在系统上可用,并且 Telegraf 可以执行它。
PostgreSQL
此插件为 PostgreSQL 服务器实例提供指标。记录的指标是轻量级的,并使用 PostgreSQL 提供的动态管理视图。
PostgreSQL Extensible
此插件查询 PostgreSQL 服务器并为返回的结果提供指标。这在使用 PostgreSQL 扩展来收集附加指标时非常有用。
另请查看更通用的 sql 输入插件。
Processes
此插件收集有关进程总数的信息,并按状态(僵尸、睡眠、运行等)对其进行分组。
在 Linux 上,此插件需要访问 procfs (/proc);在其他操作系统上,该插件必须能够执行 ps 命令。
Procstat
此插件允许监控一个或多个进程的系统资源使用情况。该插件提供有关单个进程的指标以及关于搜索返回的 PID 数量的累积指标。可以通过例如命令的正则表达式、拥有进程的用户或启动进程的服务来过滤进程。
Prometheus
此插件从 Prometheus 指标端点收集指标,例如实现此类端点的应用程序或 node-exporter 实例。此插件还支持各种服务发现方法。
PromQL
此插件通过 HTTP API 使用 PromQL 查询 从 Prometheus 端点收集指标。
Puppet Agent
此插件通过解析本地 last-run-summary 文件中的变量来收集 Puppet agent 的指标。
RabbitMQ
此插件通过 Management Plugin 从 RabbitMQ 服务器收集统计信息。
Raindrops Middleware
此插件为 Raindrops middleware 实例收集统计信息。
RAS Daemon
此插件收集由本地 RAS (可靠性、可用性和可服务性) 守护程序提供的统计信息和错误计数。
此插件需要访问 RASDaemon 的 SQLite3 数据库。请确保 Telegraf 用户对此数据库具有必要的权限!
Redfish
此插件收集有关启用了 DMTF 的 Redfish 支持的服务器硬件的指标和状态信息。
Redis Sentinel
此插件为监视 Redis 服务器和副本的 Redis Sentinel 实例收集指标。
Siemens S7
此插件通过 S7 协议从 Siemens PLC 读取指标。
Salesforce
此插件使用 Salesforce 的 REST API 的 limits endpoint 收集有关您的 Salesforce 组织中的限制以及剩余使用量的信息。
SFlow
此服务插件充当 SFlow V5 收集器,从接收到的信息生成指标。目前,该插件可以收集以太网/IPv4、IPv4 TCP 和 UDP 头的流样本。计数器和其他头样本将被忽略。请使用 netflow 插件 以获得更现代、更复杂的实现。
此插件会产生高基数数据,如果不加以控制,将对数据库造成高负载。请务必过滤生成的指标或配置您的数据库以避免基数问题!
Slab
此插件通过解析 /proc/slabinfo 文件来收集有关 Slab 缓存条目内存消耗的详细信息,并尊重 HOST_PROC 环境变量。
此插件要求 Telegraf 用户可以读取 /proc/slabinfo。
SLURM
此插件使用 slurmrestd 守护程序提供的 REST API,为 SLURM 实例收集诊断、作业、节点、分区和预订指标。
此插件支持 REST API v0.0.38,该 API 必须在 slurmrestd 守护程序中启用。有关更多信息,请参阅 文档。
S.M.A.R.T.
此插件使用 smartmontools 包收集存储设备的 SMART (自我监控、分析和报告技术) 信息。此插件还通过使用 nvme-cli 包支持 NVMe 设备。
此插件要求在您的系统上安装 smartmontools 包,并在 NVMe 设备上安装 nvme-cli 包。smartctl 和 nvme 命令必须可由 Telegraf 执行。
smartctl JSON
此插件使用 smartmontools 包收集存储设备的 SMART (自我监控、分析和报告技术) 信息。与 smart 插件 不同,此插件不使用 nvme-cli 包来收集有关 NVMe 设备的附加信息。
此插件要求在您的系统上安装 smartmontools。smartctl 命令必须可由 Telegraf 执行,并且必须支持 JSON 输出。JSON 输出在 v7.0 中添加,并在后续版本中得到改进。
Socket Statistics
此插件使用 iproute2 的 ss 命令收集有关已建立网络连接的指标。ss 命令不需要特定权限。
此插件会产生高基数数据,如果不加以控制,将对数据库造成高负载。请务必过滤生成的指标或配置您的数据库以避免基数问题!
Apache Solr
此插件使用 MBean Request Handler 从 Solr 实例收集统计信息。有关性能统计信息的更多详细信息,请参阅 性能统计信息参考。
此插件需要 Apache Solr v3.5+。
SQL
此插件通过针对 SQL 服务器执行 SQL 查询来读取指标。支持不同的服务器类型,它们的设置可能不同(特别是连接参数)。请查看 支持的 SQL 驱动程序 列表以了解 driver 名称和数据源名称 (dsn) 选项的设置。
Microsoft SQL Server
此插件为您的 SQL Server 实例提供指标。记录的指标是轻量级的,并使用 SQL Server 提供的动态管理视图。
此插件支持 Microsoft 支持的 SQL Server 版本(请参阅 生命周期日期)、Azure SQL 数据库(单一)、Azure SQL 托管实例、Azure SQL 弹性池和 Azure Arc 启用的 SQL 托管实例。
Stackdriver Google Cloud Monitoring
此插件使用 Cloud Monitoring API v3 从 Google Cloud Monitoring(以前称为 Stackdriver)收集指标。
此插件访问 收费 的 API,可能会产生费用。
Suricata
此服务插件报告 Suricata IDS/IPS 引擎的内部性能计数器,例如捕获的流量量、内存使用量、正常运行时间、流计数器等。此插件提供一个套接字供 Suricata 日志输出写入 JSON 统计信息,并处理传入的数据以适应 Telegraf 的格式。它还可以报告触发的 Suricata IDS/IPS 警报。
Swap
此插件收集有关操作系统交换内存的指标。
Syslog
此服务插件侦听通过 Unix 域套接字、UDP、TCP 或 TLS(带或不带字节计数帧)传输的 syslog 消息。
Syslog 消息应根据 syslog 协议或 BSD syslog 协议进行格式化。
System Performance Statistics
此插件使用 sysstat 包收集 Linux 系统性能统计信息。此插件使用 sadc 收集器实用程序,并通过 sadf 实用程序解析创建的二进制数据文件。
此插件要求 sysstat 包已安装在系统上,并且 sadc 和 sadf 都可由 Telegraf 执行。
System
此插件收集一般的系统统计信息,例如系统负载、正常运行时间或登录用户数。它类似于 Unix uptime 命令。
Systemd-Units
此插件使用 systemd 的 DBus 接口收集 Linux 上 systemd-units 的状态。
此插件需要 systemd v230+!
Tacacs
此插件从 Aruba ClearPass、FreeRADIUS 或 TACACS+ 等服务器收集有关 终端访问控制器访问控制系统 身份验证请求的指标,例如响应状态和响应时间。
该插件主要用于监视服务器完全处理身份验证请求(包括所有潜在的依赖调用,例如对 AD 服务器或其他信息源的调用)所需的时间。
Tail
此服务插件持续读取一个文件,并解析新到达的数据,类似于 tail -f 命令。传入的消息应采用支持的 数据格式 之一。
Teamspeak
此插件使用 ServerQuery 接口收集一个或多个虚拟 Teamspeak 服务器的统计信息。目前此插件仅支持 Teamspeak 3 服务器。
要查询外部 Teamspeak 服务器,请确保将 Telegraf 主机添加到 Teamspeak 服务器目录中的 query_ip_allowlist.txt 文件。
Temperature
此插件收集系统温度的指标。
Tengine Web Server
此插件通过 reqstat 模块从 Tengine Web 服务器 收集指标。
Timex
此插件使用 Linux 内核 adjtimex 系统调用收集系统时间的指标。
该调用获取由 ntpd、systemd-timesyncd、chrony 或其他时间同步服务控制的内核时间变量的信息。
Apache Tomcat
此插件使用 manager 状态页从 Tomcat 服务器 实例收集统计信息。有关这些统计信息的详细信息,请参阅 Tomcat 文档。
Trig
此插件用于演示目的,并插入正弦和余弦值作为指标。
UPSD
此插件通过其 NUT 网络协议从 Network UPS Tools 守护程序读取一个或多个不间断电源的数据。
uWSGI
此插件使用 Stats Server 收集有关 uWSGI 的指标。
Varnish
此插件使用 varnishstat 命令从本地 Varnish HTTP Cache 实例收集统计信息。
此插件要求 varnishstat 可执行文件已安装在系统上,并且 Telegraf 可以执行它。此外,该插件需要 Varnish v6.0.2+。
Webhooks
此服务插件提供一个 HTTP 服务器并注册多个 webhook 监听器。
Windows Performance Counters
此插件从收集的 Windows 性能计数器生成指标。
Windows Services
此插件收集有关 Windows 服务状态的信息。
监视某些服务可能需要以管理员权限运行 Telegraf。
Windows Management Instrumentation
此插件使用 Windows Management Instrumentation 类查询信息或调用方法。这允许捕获和过滤通过 WMI 公开的几乎任何配置或度量值。
Telegraf 服务用户至少必须具有 读取 要查询的 WMI 命名空间的权限。
Wireless
此插件通过读取 /proc/net/wireless 文件来收集有关无线链路质量的指标。
x509 Certificate
此插件提供有关 X.509 证书的信息,这些证书可以通过本地文件、tcp、udp、https 或 smtp 协议以及 Windows 证书存储等方式访问。
使用 UDP 地址作为证书源时,服务器必须支持 DTLS。
Dell EMC XtremIO
此插件使用 v3 Rest API 从 Dell EMC XtremIO 存储阵列 实例收集指标。
Zipkin
此服务插件实现了 Zipkin HTTP 服务器,以收集解决微服务架构中延迟问题所需的跟踪和计时数据。
此插件会产生高基数数据,如果不加以控制,将对数据库造成高负载。请务必过滤生成的指标或配置您的数据库以避免基数问题!
Apache Zookeeper
此插件使用 mntr 命令从 Zookeeper 实例收集变量。
如果 Zookeeper 中启用了 Prometheus 指标提供程序,则应改用 prometheus 插件,地址为 http://<ip>:7000/metrics。
输出插件
Telegraf 处理器插件将指标写入各种目的地。
Amon
此插件将指标写入 Amon 监控平台。它需要 serverkey 和 amoninstance URL,您可以在 网站 上为您自己的帐户获取。
如果发送的点值无法转换为 float64,则该指标将被跳过。
AMQP
此插件写入高级消息队列协议 v0.9.1 代理。该协议的一个突出实现是 RabbitMQ。
此插件不将 AMQP 交换绑定到队列。
如需入门,请查看 AMQP 概念页面和 RabbitMQ 入门指南。
Azure Application Insights
此插件将指标写入 Azure Application Insights 服务。
Azure Data Explorer
此插件将指标写入 Azure Data Explorer、Azure Synapse Data Explorer 和 Fabric 中的实时分析 服务。
Azure Data Explorer 是一个分布式、面向列的存储,专为任何类型的日志、指标和时间序列数据而构建。
Azure Monitor
此插件将指标写入 Azure Monitor,其指标分辨率为一分钟。为了在 Telegraf 中进行适应,该插件将自动将指标聚合到一分钟的桶中,并在每个刷新间隔将其发送到服务。
Azure Monitor 自定义指标服务目前处于预览状态,可能并非在所有 Azure 区域都可用。也请注意指标时间限制!
每个输入插件的指标将写入一个单独的 Azure Monitor 命名空间,默认情况下以 Telegraf/ 作为前缀。每个指标的字段名将作为 Azure Monitor 指标名写入。所有字段值将作为汇总集写入,包括:最小值、最大值、总和、计数。标签将作为维度写入每个 Azure Monitor 指标。
Google BigQuery
此插件将指标写入 Google Cloud BigQuery 服务,并需要使用服务帐户或用户凭据 通过 Google Cloud 进行身份验证。
请注意,此插件访问 收费 的 API,可能会产生费用。
Google Cloud PubSub
此插件以支持的 数据格式之一将指标发布到 Google Cloud PubSub 主题。
Amazon CloudWatch
此插件将指标写入 Amazon CloudWatch 服务。
Amazon CloudWatch Logs
此插件将日志指标写入 Amazon CloudWatch 服务。
CrateDB
此插件通过其 PostgreSQL 协议将指标写入 CrateDB。
Discard
此插件会丢弃写入它的所有指标,仅用于测试目的。
Dynatrace
此插件通过 Dynatrace Metrics API V2 将指标写入 Dynatrace。它可以与 Dynatrace OneAgent 一起运行以实现自动身份验证,或者可以通过指定 URL 和 API Token 在没有 OneAgent 的主机上独立运行。
有关该插件的更多信息,请参阅 Dynatrace 文档。
所有指标都报告为仪表盘,除非它们被指定为增量计数器(使用 additional_counters 或 additional_counters_patterns 配置选项,见下文)。有关那里定义的类型,请参阅 Dynatrace Metrics ingestion protocol 文档。
Elasticsearch
此插件使用 Elastic 客户端库通过 HTTP 将指标写入 Elasticsearch。该插件支持从 v5.x 到 v7.x 的 Elasticsearch 版本。
Azure Event Hubs
此插件将指标写入 Azure Event Hubs 服务,格式为任何支持的 数据格式。指标以批次发送,每个消息负载包含一个指标对象,最好是 JSON 格式,因为这有助于与下游组件集成。
每个批次都发送到命名空间内的单个 Event Hub。如果未指定分区键,则批次将在所有 Event Hub 分区之间自动进行负载均衡(轮询)。
Executable
此插件通过 stdin 将指标写入外部应用程序。命令将在每次写入时执行,创建一个新进程。指标以支持的 数据格式之一传递。
可执行文件和各个参数必须定义为一个列表。可执行文件到 stderr 的所有输出将在 Telegraf 日志中记录。
为了获得更好的性能,请考虑使用 execd,它会持续运行。
Executable Daemon
此插件通过 stdin 将指标写入外部守护进程。该命令将执行一次,并以支持的数据格式之一将其传递给它。可执行文件和单个参数必须定义为一个列表。
可执行文件到 stderr 的所有输出都将在 Telegraf 日志中记录。Telegraf 最低版本:Telegraf 1.15.0
Graphite
此插件通过 TCP 将指标写入Graphite。有关 Telegraf 指标与 Graphite 输出之间的转换的详细信息,请参阅Graphite 数据格式。
Health
此插件提供了一个 HTTP 健康检查端点,可以配置为根据指标值返回失败状态码。
当插件健康时,它将返回 200 响应;当不健康时,它将返回 503 响应。默认状态为健康,必须有一个或多个检查失败,资源才能进入失败状态。
Heartbeat
此插件通过 POST 以固定间隔向 HTTP 端点发送心跳信号。这对于跟踪大型部署中现有的 Telegraf 实例很有用。
InfluxDB v1.x
此插件通过 HTTP 或 UDP 协议将指标写入InfluxDB v1.x 实例。
InfluxDB v2.x
此插件通过 HTTP 将指标写入InfluxDB v2.x 实例。
Inlong
此插件将指标发布到Apache InLong 实例。
Instrumental
此插件将指标写入Instrumental Collector API,需要项目特定的 API 令牌。
Instrumental 接受的统计信息格式非常接近 Graphite,唯一的区别是统计信息(gauge、increment)的类型是第一个令牌,并用空格与度量本身分隔。increment 类型仅在使用statsd 输入插件通过计数器接收指标时使用。
Apache IoTDB
此插件将指标写入Apache IoTDB 实例,一个用于物联网的数据库,支持会话连接和数据插入。
Kafka
此插件将指标作为 Kafka 生产者写入Kafka Broker。
Amazon Kinesis
此插件将指标写入Amazon Kinesis 端点。它会将一个请求中的所有点打包,以减少 API 请求数量。
有关 Kinesis 架构和概念的更多详细信息,请参阅Amazon 官方文档。
Librato
此插件将指标写入Librato 服务。它需要 api_user 和 api_token,这些可以在您账户的网站上获取。
配置文件中的 source_tag 选项用于将 Point Tags 的上下文信息发送到 API。除此之外,该插件目前不发送任何额外的关联 Point Tags。
如果发送的点值无法转换为 float64,则会跳过该指标。
Grafana Loki
此插件使用指标名称和标签作为标签,将日志写入Grafana Loki 实例。日志行将包含所有字段,格式为 key="value",易于 Loki 中的 logfmt 解析器解析。
每个流中的日志在发送到 Loki 之前按时间戳排序。
Microsoft Fabric
此插件将指标写入Fabric Eventhouse 和 Fabric Eventstream,这些是Microsoft Fabric 中的实时智能的组件。
实时智能是 Microsoft Fabric 中的一项 SaaS 服务,可让您提取见解并可视化动态数据。它为事件驱动的场景、流数据和数据日志提供端到端解决方案。
MQTT Producer
此插件将指标作为 MQTT 生产者写入MQTT 代理。该插件支持 MQTT 协议 3.1.1 和 5。
在 mosquitto MQTT 服务器的 v2.0.12+ 版本中,存在一个错误,要求在 Telegraf 中将 keep_alive 值设置为非零。否则,服务器将返回 identifier rejected。作为参考,eclipse/paho.golang 将 keep_alive 设置为 30。
Nebius Cloud Monitoring
此插件将指标写入Nebuis Cloud Monitoring 服务。
New Relic
此插件使用Metrics API 将指标写入New Relic Insights。要使用此插件,您必须获得Insights API 密钥。
OpenSearch
此插件通过 HTTP 将指标写入OpenSearch 实例。它支持 OpenSearch 1.x 和 2.x 版本,但不能保证与 1.x 的未来兼容性,而是将专注于 2.x 的支持。
请考虑为 1.x 版本使用现有的 Elasticsearch 插件。
OpenTelemetry
此插件通过 gRPC 将指标写入OpenTelemetry 服务器和代理。
Parquet
此插件将指标写入parquet 文件。默认情况下,指标按度量名称分组并写入同一文件。
如果指标模式与文件中的模式不匹配,该指标将被丢弃。
要了解有关 parquet 格式的更多信息,请查看parquet 文档以及一篇关于查询 parquet 的博文。
PostgreSQL
此插件将指标写入PostgreSQL(或兼容)服务器,并管理模式和自动更新丢失的列。
Prometheus
此插件启动一个Prometheus 客户端,并默认在 /metrics 端点上公开写入的指标。然后,Prometheus 服务器可以轮询此端点。
Redis Time Series
此插件将指标写入Redis time-series 服务器。
SQL
此插件将指标写入支持的 SQL 数据库,使用简单、硬编码的数据库模式。每个指标类型都有一个表,表名对应指标名称。每个字段都有一个列,每个标签都有一个列,还有一个可选的指标时间戳列。
每条指标写入一行。这意味着即使指标名称、标签和时间戳相同,多个指标也不会合并到一行中。
该插件使用 Golang 的通用“database/sql”接口和第三方驱动程序。有关支持的驱动程序列表和详细信息,请参阅驱动程序特定部分。
Google Cloud Monitoring
此插件将指标写入Google Cloud Monitoring(以前称为 Stackdriver)的 project。需要使用服务帐户或用户凭据进行身份验证。
此插件访问收费的 API,可能会产生费用。
默认情况下,指标按 namespace 变量和指标键分组,例如:custom.googleapis.com/telegraf/system/load5。但是,这不是最佳实践。设置 metric_name_format = "official" 将产生一种更易于查询的格式:metric_type_prefix/[namespace_]name_key/kind。如果未设置全局命名空间,则省略。
ActiveMQ STOMP
此插件将指标写入Active MQ Broker 以用于STOMP,但也支持Amazon MQ 代理。指标可以以支持的数据格式之一写入。
Sumo Logic
此插件使用以下数据格式之一将指标写入Sumo Logic HTTP Source:
graphite,Content-Type 为application/vnd.sumologic.graphitecarbon2,Content-Type 为application/vnd.sumologic.carbon2prometheus,Content-Type 为application/vnd.sumologic.prometheus
Syslog
此插件通过 UDP 以RFC5426 格式或通过 TCP 以RFC6587 格式或通过 TLS 以RFC5425 格式将指标作为 syslog 消息写入,无论是否带八位字节计数帧。
Syslog 消息根据RFC5424 进行格式化,在发送消息时根据 RFC 的syslog 消息格式部分限制字段大小。发送超出这些大小的消息可能会被严格的接收方静默丢弃。
Amazon Timestream
此插件将指标写入Amazon Timestream 服务。
Yandex Cloud Monitoring
此插件将指标写入Yandex Cloud Monitoring 服务。
聚合器插件
Telegraf 聚合插件创建聚合指标(例如,平均值、最小值、最大值、分位数等)。
基本统计
此插件计算一组指标的基本统计信息,如计数、差值、最小值、最大值、平均值、非负差值等,并每 period 发出这些统计值。
导数
此插件计算聚合指标的所有字段的导数。
最终
此插件发出连续序列的最后一个指标,该序列定义为在 series_timeout 的时间周期内接收更新的序列。连续序列可以比 period 定义的时间间隔长。当一个序列在 series_timeout 内未收到更新时,将发出最后一个指标。
或者,插件会为 periodic 输出策略发出 period 内的最后一个指标。
这对于获取生产离散时间序列(如 procstat、cgroup、kubernetes 等)的数据源的最终值,或对以更高频率收集的指标进行降采样非常有用。
所有发出的指标的字段名称默认都带有 _final 后缀。
直方图
此插件创建直方图,其中包含配置范围内字段值的计数。直方图指标每 period 发出一次。
在 cumulative 模式下,添加到存储桶的值也会添加到分布的连续存储桶中,创建一个累积直方图。
默认情况下,存储桶计数在周期之间不会重置,在 Telegraf 运行时会非严格递增。可以通过设置 reset 参数来改变此行为。
合并
此插件将相同系列和时间戳的指标合并为具有超级字段集的新指标。这里的系列由度量名称和标签键值集定义。
当字段分布在多个具有相同度量、标签集和时间戳的指标中时,请使用此插件。
最小值-最大值
此插件聚合每个字段的最小值和最大值,每 period 秒发出一次聚合结果,字段名称分别附加 _min 和 _max 后缀。
分位数
此插件将每个数值字段按度量聚合到指定的量级,并每 period 发出量级。支持不同的聚合算法,具有不同的精度和限制。
Starlark
此插件允许通过 Starlark 脚本实现自定义聚合插件。
Starlark 语言是 Python 的方言,对于有 Python 语言经验的人来说会很熟悉。但是,存在重大差异。现有的 Python 代码不太可能在未修改的情况下正常工作。
执行环境是沙箱化的,无法访问本地文件系统或执行网络操作。这是 Starlark 语言作为配置语言的设计使然。
此插件使用的 Starlark 脚本需要由定义聚合器的三个方法组成:add、push 和 reset。
add 方法在新指标添加到插件时调用,将指标添加到聚合器。在 period 之后,调用 push 方法输出结果指标,最后通过使用 Starlark 脚本的 reset 方法重置聚合。
Starlark 函数可以使用全局函数 state 来保存聚合信息,例如已添加的指标等。
有关语法和可用函数的更多详细信息,请参阅Starlark 规范。
值计数器
此插件计算字段中唯一值的出现次数,并每 period 发出一次计数器,字段名称后缀为转换为 string 的唯一值。
要计数的字段必须使用 fields 设置进行配置,否则将不计数任何字段,也不会发出任何指标。
此插件对于例如在定义的 period 内计算 HTTP 状态码或其他分类值的出现次数非常有用。
计数具有大量潜在值的字段可能会产生大量新字段,并导致内存使用量增加。请注意仅计数具有有限值集的字段。
处理器插件
Telegraf 输出插件会转换、装饰和过滤指标。
Batch
此插件通过添加批次标签将指标分组到批次中。这对于并行处理指标很有用,下游的处理器、聚合器或输出可以使用 tagpass 或 metricpass 选择批次。
指标使用轮循方案分布在批次中。
Converter
此插件允许将标签转换为字段或时间戳,并将字段转换为标签或时间戳。此外,该插件还允许更改字段类型。
在将标签转换为字段时,请务必确保系列仍然可以唯一标识。具有相同系列键(度量 + 标签)的字段会相互覆盖。
Cumulative Sum
此插件累积每个指标的字段值随时间的变化,并在指标更新时发出累积总和指标。这在使用依赖于单调递增值的输出时很有用。
系列中的指标是按**到达顺序**累积的,而不是按其时间戳顺序!
Date
此插件将指标时间戳添加为人类可读的标签。一个常见的用例是添加一个可以用于按月或按年分组的标签。
Dedup
此插件过滤掉字段值与先前值完全重复的指标。如果代理配置中的 statefile 选项已设置,此插件将在运行时保留其状态。
Defaults
此插件允许为字段和标签指定默认值,以防标签或字段不存在或具有空值。
Enum
此插件允许根据配置的枚举映射字段或标签值。主要用例是将数值重写为人类可读值或反之。可以配置默认映射以用于所有剩余值。
Execd
此插件作为一个单独的进程运行外部程序,并将指标通过 stdin 管道传输到进程,并从其 stdout 读取已处理的指标。stderr 上的程序输出将被记录。
Filepath
此插件允许使用路径(例如,basename 提取最后一个路径元素)来转换标签和字段值。值可以就地修改,也可以存储在另一个键中。
Filter
此插件允许指定一组规则来处理指标,并具有保留或删除这些指标的能力。它不修改指标。因此,用户可能希望应用此处理器来从处理/输出流中删除指标。
过滤不是特定于输出的,而是将应用于此处理器处理的指标。
Network Interface Name
此插件使用 SNMP 查找网络接口名称。
Lookup
此插件允许使用一个或多个包含查找表的文件来注解传入的指标。查找是静态的,因为文件仅在启动时使用。其主要用例是为指标添加附加标签,例如,根据其来源。可以根据查找表文件添加多个标签。
可以使用 Golang 模板生成查找键,该模板可以访问指标名称({{.Name}})、标签值({{.Tag "mytag"}},其中 mytag 是标签名称)和字段值({{.Field "myfield"}},其中 myfield 是字段名称)。不存在的标签和字段将分别导致空字符串或 nil。如果找不到键,则指标将按原样传递。默认情况下,会添加所有匹配的标签,并覆盖现有的标签值。
该插件仅支持添加标签,因此所有映射的标签值都必须是字符串!
Noise
此插件用于向数值字段添加噪声。对于每个字段,使用定义的概率密度函数生成噪声并将其添加到值中。函数类型可以配置为拉普拉斯、高斯或均匀。
Port Name Lookup
此插件允许将包含知名端口的标签或字段(TCP 端口为数字,例如 80;端口和协议为 443/tcp)转换为注册的服务名称。
Printer
此插件将每个通过它的指标打印到标准输出。
Regex
此插件使用正则表达式模式转换标签和字段值,以及重命名标签、字段和指标。标签和字段值可以使用命名组进行批量转换。
regex 处理器仅处理字符串字段。它不适用于任何其他数据类型,如整数或浮点数。
Rename
此插件允许重命名度量、字段和标签。
Reverse DNS
此插件对包含 IP 的标签或字段进行反向 DNS 查找,并创建一个包含相应 DNS 名称的标签或字段。
Scale
此插件允许根据以下公式将字段值从输入范围缩放到给定输出范围:
或者,您可以根据以下公式将输入乘以一个因子并加上一个偏移量:
输入字段将在可能的情况下转换为浮点值。否则,无法转换的字段将被忽略并保留其原始值。
输入值和输出值都不会被限制在其各自的范围内!
SNMP Lookup
此插件通过 SNMP 查找额外信息,并将其作为标签添加到指标中。
Split
此插件根据配置的模板将一个指标拆分为一个或多个指标。生成的指标将根据源指标进行时间戳处理。模板可以重叠,其中一个字段或标签在模板之间共享,并因此出现在多个指标中。
如果 drop_original 设置为 true,则在未找到匹配项时,该插件可能导致丢弃所有指标!请确保在生产环境中使用之前测试模板,并使用指标过滤来避免数据丢失。
Starlark
此插件为每个匹配的指标调用提供的 Starlark 函数,允许自定义编程指标处理。
Starlark 语言是 Python 的一种方言,对于有 Python 语言经验的人来说会很熟悉。但是,存在重大差异。现有的 Python 代码不太可能在未修改的情况下正常工作。执行环境是沙箱化的,无法执行 I/O 操作,例如从文件或套接字读取。
Starlark 规范 包含有关语法和可用函数的详细信息。
Strings
此插件允许使用不同的函数操作度量名称、标签和字段值中的字符串。
Tag Limit
此插件确保只保留给定指标的特定数量的标签,并在数据源附加的标签数量超过限制时选择要保留的标签。
这在使用对每个指标的标签/标签数量有硬性限制的输出系统(例如 Stackdriver)或者标签基数过高在计算和/或财务上都很昂贵时非常有用。
Template
此插件将模板应用于指标以生成新标签。此插件的主要用例是创建一个可用于动态路由到多个输出插件或使用特定于输出的路由选项的标签。
模板可以访问每个指标的度量名称、标签、字段和时间戳。模板遵循Go Template 语法,并且可能包含Sprig 函数。
Timestamp
此插件允许解析包含时间戳的字段为其他格式的时间戳。
TopK
此插件过滤一段时间内的顶级序列,并通过不同的聚合函数计算顶级指标。处理步骤包括根据指标名称和标签对指标进行分组,每周期计算每个组的聚合函数,并输出前 K 组。
此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 Telegraf 和本文档提出反馈和 bug 报告。要获取支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。