0
我正在使用fluentd版本0.14.6。我想要毫秒(或更好)由fluentd捕获,然后传递给ElasticSearch,以便条目以正确的顺序显示。这里是我的fluentd.conf:fluentd不能捕获毫秒的时间
<source>
@type tail
path /home/app/rails/current/log/development.log
pos_file /home/app/fluentd/rails.pos
tag rails.access
format /^\[(?<time>\S{10}T\S{8}.\d{3})\] \[(?<remoteIP>\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\] \[(?<requestUUID>\w+)\] \[AWSELB=(?<awselb>\w+)\] (?<message>.*)/
time_format %Y-%m-%dT%H:%M:%S.%L
</source>
<match rails.access>
@type stdout
time_as_integer false
</match>
,这里是从Rails的
[2016-09-27T19:10:05.732] [xxx.xxx.xxx.46] [46171c9870ab2d06bc3a9a0bb02] [AWSELB=97B1C1B51866B68887CF7F5B8C352C45CA31592743CF389F006C541D59ED5E01852E7EF67C807B1CFC8BC145D569BCB9859AFCA73D10A87920CF2269DE5A47D16536B33873DEEF4A24967661232B38E564] Completed 200 OK in 39.8ms (Views: 0.5ms | ActiveRecord: 14.9ms)
这所有的样本日志条目解析很好,除了毫秒被丢弃。下面是从STDOUT
2016-09-27 19:43:56 +0000 rails.access: {"remoteIP":"xxx.xxx.xxx.46","requestUUID":"0238cb3d812534487181b2c54bd20","awselb":"97B1C1B51866B68887CF7F5B8C352C43CA21592743CF389F006C541D59ED5E01852E7EF67C807B1CFC8BC145D569BCB9859AFCA73D10A87920CF2269DE5A47D16536B33873DEEF4A24967661232B38E564","message":""}
我有searched SO的结果,而是列出的两个职位从this PR之前的时间,这是应该以毫秒为单位增加。它被合并。公关提到增加一个time_as_integer
选项,我已经完成。我试图将它设置为真假,因为公关中存在一些混淆,但它没有任何区别。我也尝试将它放入源代码中,但是却抛出了一个错误。
我也看着this post,这是试图达到纳秒,我不需要。这对我来说也不是一个好的解决方案,因为时间会来自流利的,而不是Rails。
感谢您的帮助!