Logstash日期过滤器

时间:2014-08-27 09:16:39

标签: elasticsearch logstash kibana grok

我有一个日期文件,其日期格式如下

"respHdr":{"date":"Tue,%2008%20Jul%202014%2022:08:18%20GMT","expires":"Tue,%2008%20Jul%202014%2022:08:18%20GMT"}

如何使用logstash Date过滤器解析给定的日期格式?

1 个答案:

答案 0 :(得分:1)

您的日志看起来像JSON格式,日期字段中包含URLEncoded值,因此您需要做的第一件事就是将codec=>json添加到inputjson { 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 date documentation以确定该日期的格式。