logstash默认timestamp时间戳值修改为日志中提取的时间
Posted zhangphil
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了logstash默认timestamp时间戳值修改为日志中提取的时间相关的知识,希望对你有一定的参考价值。
logstash中的timestamp时间戳时间由logtash在采集到日志时间时候自动设置,有些时候,需要把这个默认的timestamp时间修改为日志数据中提取到的时间,使两者一致。可以通过配置文件实现:
filter
grok
match => [
"message", "\\[%DATA:logtime\\] "
]
break_on_match => false
date
match=> ["logtime","yyyy-MM-dd HH:mm:ss.SSS"]
target=>"@timestamp"
上述配置的grok将匹配每一行日志中开始的[]里面的数据作为时间放入到logtime中,然后在date里面,将按照yyyy-MM-dd HH:mm:ss.SSS的日期时间格式把时间最终覆盖系统默认的timestamp中。
也可以通过ruby代码实现把自己提取到的日志时间作为系统默认的时间戳:
filter
ruby
code => "
event.set('@timestamp',event.get('this_is_my_log_time'))
"
开发者涨薪指南
48位大咖的思考法则、工作方式、逻辑体系
以上是关于logstash默认timestamp时间戳值修改为日志中提取的时间的主要内容,如果未能解决你的问题,请参考以下文章
logstash默认@timestamp时间戳时间与本地时间相差8小时
logstash默认@timestamp时间戳时间与本地时间相差8小时