更改由 Elapsed 或 Aggregate 过滤器创建的事件的日期

Change date on event created by Elapsed or Aggregate filters

new_event_on_match 与经过的过滤器一起使用时,会创建一个带有新时间戳的新事件。聚合过滤器也添加了一个带有新时间戳的新事件。

我想使用原始事件的时间戳,现在字段 elapsed_timestamp_start 中可用。如何替换新创建的事件中的 @timestamp

我可以在 Elapsed 过滤器中使用 Date 过滤器吗?

对于初学者,请注意只有 elapsed 过滤器会创建一个新事件,aggregate 过滤器不会创建新事件,并且会将到目前为止已聚合的任何信息推送到最后一个事件中。

为了提供一些背景信息,您提到的上一个问题是

你可以实现你想要的,只需在最后一个elapsed过滤器之后添加一个date过滤器,从而修改上游elapsed过滤器新创建的事件.另请注意,在尝试匹配日期之前,我们首先需要将 elapsed_timestamp_start 字段转换为字符串,因为它是一个 Logstash 时间戳对象(由 elapsed 过滤器创建)

  if "elapsed" in [tags] {
    mutate {
      convert => {"elapsed_timestamp_start" => "string"}
    }
    date {
      match => ["elapsed_timestamp_start", "ISO8601"]
    }
  }