Filebeat 提示 "no non-zero metrics in the last 30s" 是什么意思?

Filebeat 日志出现 "no non-zero metrics in the last 30s" 是信息级提示,表示过去 30 秒没有采集到任何日志数据。本文说明该日志的含义、常见原因(路径配置、权限、无新日志)与排查步骤。

最佳实践
Filebeat 提示 "no non-zero metrics in the last 30s" 是什么意思?封面

这不是错误,是 Filebeat 的周期性自检日志:过去 30 秒内没有读到任何新日志行。 日志文件本身没有新增内容时它属正常;如果业务一直在写日志还出现这条提示,才需要排查。

先判断:正常还是异常?

  • 低峰期/测试环境日志写入本来就少 → 正常,忽略即可
  • 业务持续产生日志但 Filebeat 一直报这条 → 采集链路有问题,按下文排查。

排查清单

1. 路径配置是否正确

filebeat.inputs:
  - type: filestream
    paths:
      - /var/log/myapp/*.log

确认 glob 路径真实匹配到文件:ls /var/log/myapp/*.log

2. 文件权限:Filebeat 进程用户对日志文件要有读权限——sudo -u filebeat cat /path/to/log 验证。

3. 文件句柄/harvester 状态:看 Filebeat 日志里 harvester 是否启动了对目标文件的采集;文件被 logrotate 轮转后 inode 变化,filestream 类型能自动跟踪,老的 log 类型可能漏。

4. 输出端堵塞:Elasticsearch/Kafka 输出端写不进去时,Filebeat 会反压停止读取——检查输出端健康度与 Filebeat 的 queue 指标。

观测云对照

观测云 DataKit 的日志采集自带运行状态上报:采集速率、发送队列、错误计数都能在观测云控制台直接看到,"采没采到数据"不用翻进程日志。

常见问题(FAQ)

Q:能关掉这条日志吗? 调低 Filebeat 日志级别到 warning 即可(logging.level: warning),它是 info 级输出。

Q:文件有内容但一直不采? 检查 ignore_older 设置——默认不采修改时间太老的文件;历史文件要调大或关闭。

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台