文档文档

Netfilter Conntrack 输入插件

此插件从 Netfilter 的 conntrack 工具收集指标。该插件有两种收集机制:

  1. 如果 collect 选项已相应设置以查找特定于 CPU 的值,则从 /proc/net/stat/nf_conntrack 文件中提取信息。
  2. 通过指定 dirs 选项使用特定文件和目录。在运行时,conntrack 在 /proc/sys/net 中公开许多连接统计信息。根据您的内核版本,这些文件可能位于 /proc/sys/net/ipv4/netfilter/proc/sys/net/netfilter 中,并且会以 ipnf 作为前缀。

为了简化异构环境中的配置,可以指定目录和文件名的一个超集。任何不存在的位置都将被忽略。

引入于: Telegraf v1.0.0 标签: system 操作系统支持: linux

全局配置选项

插件支持其他全局和插件配置设置,用于修改指标、标签和字段,创建别名以及配置插件顺序等任务。更多详情请参阅 CONFIGURATION.md

配置

# Collects conntrack stats from the configured directories and files.
# This plugin ONLY supports Linux
[[inputs.conntrack]]
  ## The following defaults would work with multiple versions of conntrack.
  ## Note the nf_ and ip_ filename prefixes are mutually exclusive across
  ## kernel versions, as are the directory locations.

  ## Look through /proc/net/stat/nf_conntrack for these metrics
  ## all - aggregated statistics
  ## percpu - include detailed statistics with cpu tag
  collect = ["all", "percpu"]

  ## User-specified directories and files to look through
  ## Directories to search within for the conntrack files above.
  ## Missing directories will be ignored.
  dirs = ["/proc/sys/net/ipv4/netfilter","/proc/sys/net/netfilter"]

  ## Superset of filenames to look for within the conntrack dirs.
  ## Missing files will be ignored.
  files = ["ip_conntrack_count","ip_conntrack_max",
          "nf_conntrack_count","nf_conntrack_max"]

Metrics

每个字段的详细解释可以在 内核文档 中找到

  • conntrack
    • ip_conntrack_count (int, count): conntrack 表中的条目数
    • ip_conntrack_max (int, size): conntrack 表的最大容量
    • ip_conntrack_buckets (int, size): 哈希表的大小。

collect = ["all"]

  • entries: conntrack 表中的条目数
  • searched: 执行的 conntrack 表查找次数
  • found: 成功的搜索条目数
  • new: 新添加的条目数(之前未预料到)
  • invalid: 遇到的无法跟踪的数据包数
  • ignore: 遇到的已连接到某个条目的数据包数
  • delete: 已删除的条目数
  • delete_list: 已放入删除列表的条目数
  • insert: 插入列表的条目数
  • insert_failed: 插入尝试但失败的次数(重复条目)
  • drop: 由于 conntrack 失败而丢弃的数据包数
  • early_drop: 为了给新条目腾出空间而丢弃的条目数,当达到 maxsize
  • icmp_error: invalid 的子集。由于错误而无法跟踪的数据包
  • expect_new: 在期望已存在后添加的条目
  • expect_create: 添加的期望
  • expect_delete: 删除的期望
  • search_restart: 由于哈希表大小调整而重新启动的 Conntrack 表查找

标签

collect = ["percpu"] 时,将包含每个 CPU 线程的详细统计信息。

不包含 "percpu" 时,cpu 标签将具有 all 值。

示例输出

conntrack,host=myhost ip_conntrack_count=2,ip_conntrack_max=262144 1461620427667995735

带有 stats

conntrack,cpu=all,host=localhost delete=0i,delete_list=0i,drop=2i,early_drop=0i,entries=5568i,expect_create=0i,expect_delete=0i,expect_new=0i,found=7i,icmp_error=1962i,ignore=2586413402i,insert=0i,insert_failed=2i,invalid=46853i,new=0i,search_restart=453336i,searched=0i 1615233542000000000
conntrack,host=localhost ip_conntrack_count=464,ip_conntrack_max=262144 1615233542000000000

此页面是否有帮助?

感谢您的反馈!


InfluxDB 3.8 新特性

InfluxDB 3.8 和 InfluxDB 3 Explorer 1.6 的主要增强功能。

查看博客文章

InfluxDB 3.8 现已适用于 Core 和 Enterprise 版本,同时发布了 InfluxDB 3 Explorer UI 的 1.6 版本。本次发布着重于操作成熟度,以及如何更轻松地部署、管理和可靠地运行 InfluxDB。

更多信息,请查看

InfluxDB Docker 的 latest 标签将指向 InfluxDB 3 Core

在 **2026 年 2 月 3 日**,InfluxDB Docker 镜像的 latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。

如果使用 Docker 来安装和运行 InfluxDB,latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。例如,如果使用 Docker 运行 InfluxDB v2,请将 latest 版本标签替换为 Docker pull 命令中的特定版本标签 — 例如

docker pull influxdb:2