我如何parsinglogstash中的一个nginx msec字段?

我正在尝试处理logstash中的一个nginx访问日志 。

为了让我的时间戳获得毫秒级的准确度,我使用了$msecvariables。 这意味着时间戳的格式1430832725.814 ,其中整数部分是UNIX时间戳,小数部分以毫秒为单位。 不幸的是,我找不到可以parsingUNIX时间戳的logstashdate格式 。

有没有另一种方法让nginx以毫秒的精度进行logging? 或者一种获取logstashdatefilter来parsingUNIX时间戳的方法?

UNIX格式文字可以处理小数秒,所以它将能够parsing$msec字段。

首先,使用grokfilter将$ msec字段映射到输出字段

 grok { match => { "message" =>\[%{GREEDYDATA:unix_timestamp}\] } 

然后使用另一个datefilter将其转换为@timestamp字段

  date { match => ["unix_timestamp", "UNIX"] } 

如果要映射到@timestamp以外的字段,请参阅Logstash参考