在使用logstash时,默认使用了一个时间字段@timestamp,@timestamp时间使用的是utc时间,在kibana中展示时,一般自己会增加新字段,不影响判断。但是最近需要使用----elastalert,监测waf的拦截日志然后通过企业微信进行告警,触发时间如果再使用--@timestamp,会对一些信息接收人产生误解,所以要将@timestamp时间转换成本地date时间。
综合参考其他人的方案,在logstash中,监测对象配置里的--filter中添加代码是最直接方便的。重启logstash就能发现改变。
grok {
...
ruby {
code => "event.timestamp.time.localtime"
}
...
}