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

如何用应用时间戳替换Filebeat接入Kafka时的Ingress时间戳?

问题:Filebeat对接Kafka时替换@timestamp为应用时间戳

我正在使用Filebeat与Kafka,希望将Filebeat生成的Ingress时间戳替换为应用自身的时间戳。了解到Logstash可通过过滤器实现该功能,但不清楚适配Kafka时的配置方法。我尝试了两种Filebeat.yml配置方案:

  • 方案一使用timestamp处理器,但因日期格式问题未生效;
  • 方案二使用JavaScript脚本处理器,脚本可正常修改message字段,但替换@timestamp的操作失败。

尝试的配置代码

配置1(timestamp处理器)

fields:
    application_timestamp: "2023-06-07 07:49:51.196Z"

processors:
    - timestamp:
        field: application_timestamp
        layouts:
          - '2006-01-02 15:04:05.999Z'
        test:
          - '2019-11-18 04:59:51.123Z'

配置2(JavaScript脚本处理器)

processors:
    - script:
        lang: javascript
        id: replace_timestamp
        source: >
          function process(event) {
            event.Put("@timestamp", event.Get("fields.application_timestamp"));
            return [event];
          }

效果对比

  • 当前效果:
    当前效果
  • 预期效果:
    预期效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 10:52:11