You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fluentd(td-agent)输出文件名时间字段始终显示为00问题求助

问题原因

输出文件名时间固定为00是配置不兼容、参数缺失导致的:

  • 你使用的Fluentd 1.14版本中,time_slice_format是v0.12版本的废弃参数,不会生效
  • buffer块中使用time作为分片维度时,没有配置必填的timekey参数指定时间切分窗口,Fluentd无法按实际日志时间生成对应时间戳,会默认取初始时间的0点值填充
  • 未指定时间取值字段,默认会用Fluentd接收日志的时间,而非日志本身携带的@timestamp字段时间
修复方案

替换原有file输出配置为以下内容:

<match **>
  @type file
  path /logs/test-${$.kubernetes.host}

  <buffer $.kubernetes.host, time>
    path /logs/buffer/w1
    flush_mode interval
    flush_interval 1s
    # 按1小时为单位切分时间分片,匹配文件名小时维度需求
    timekey 1h
    # 指定使用日志内的@timestamp字段作为时间计算依据
    time_key @timestamp
    # 文件名时间部分格式,替代废弃的time_slice_format
    timekey_format %Y%m%dT%H
    # 时间窗口到期后等待5秒刷盘,避免边缘日志错分到下一时间窗口
    timekey_wait 5s
  </buffer>

  append true
  <format>
    @type single_value
    message_key message
  </format>
</match>

配置调整后注意事项:

  • 删除buffer路径下旧配置生成的残留缓冲文件,避免旧缓冲数据导致文件名异常
  • 重启td-agent服务使配置生效
  • 生效后输出文件格式会符合预期,示例:/logs/test-w1.test.local.20220710T13.log

内容的提问来源于stack exchange,提问作者ddakker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 02:36:15