我有一个日志文件,其日期格式如下
"respHdr":{"date":"Tue,%2008%20Jul%202014%2022:08:18%20GMT","expires":"Tue,%2008%20Jul%202014%2022:08:18%20GMT"}
如何使用 logstash 日期过滤器解析给定的日期格式?
我有一个日志文件,其日期格式如下
"respHdr":{"date":"Tue,%2008%20Jul%202014%2022:08:18%20GMT","expires":"Tue,%2008%20Jul%202014%2022:08:18%20GMT"}
如何使用 logstash 日期过滤器解析给定的日期格式?
看起来您的日志是 JSON 格式,日期字段中有 URLEncoded 值,因此您需要做的第一件事是添加codec=>json
到您的input
, 或json { source => message }
.
在 Logstash 中有事件作为事件之后,您需要解码日期字段:
urldecode { field => 'respHdr.date' }
urldecode { field => 'respHdr.expires' }
然后最后解析这些字段中的日期:
date {
target => '@timestamp'
match => [ 'respHdr.date', 'WHATEVER_FORMAT_THAT_DATE_IS' ]
}
date {
target => 'expires'
match => [ 'respHdr.expires', 'WHATEVER_FORMAT_THAT_DATE_IS' ]
}
您需要查阅logstash 日期文档以确定该日期的格式。