"_dateparsefailure";在使用logstash中的日期分析日期时



我的日期,格式如下

"_messagetime" => "08/08/2022 22:18:17.254 +0530"

我在我的日志存储中使用日期过滤器

date {
match => ["_messagetime", "YYYY-MM-dd HH:mm:ss.SSS"]
} 

但是我得到

"_dateparsefailure"

有人能告诉我的方法可能出了什么问题吗

日期过滤器必须与字段的整个值匹配。它不能只解析前缀。此外,您的日期筛选器具有YYYY-MM-dd,但您的字段具有dd/MM/YYYY。

您可以使用解析该字段

date { match => ["_messagetime", "dd/MM/YYYY HH:mm:ss.SSS Z"] }

得到CCD_ 1。请注意[@timestamp]值中的尾随Z——logstash中的所有时间戳都存储在祖鲁/UTC时区中。

您的错误是由+0530";_messagetime字段内容中的字符串。

要解决这个问题,一个选项是:

  • 在日期插件之前删除此字符串,您可以使用grok或dissect

例如:

filter {
grok {
match => { "_messagetime" => "%{DATESTAMP:newdate}%{DATA:trash}" }
}
}
  • 应用相同日期的插件conf,现在必须在没有"+0530";发生

最新更新