Easysearch、Elasticsearch 还是 Opensearch,是个问题

logstash7.2如何配置时区设置?

Logstash | 作者 chzh9041 | 发布于2019年07月19日 | 阅读数:6082

采集sqlserver 表数据,里面有datetime字段的数据

采集当遇到几个特定的时间点时,遇到错误:不是有效的本地时间

查了一下那几个时间,全是1989年的几个特殊夏令时,应该是logstash采集的时候用的utc ,本机用的UTC+8,所以才遇到这种问题

从网上查到可以通过修改timestamp.rb 文件,然后发现7.2版本的logstash已经把这个文件取消了,现在不知道从哪儿可以改

求助各位,先行谢过
已邀请:

cqbc - 重庆白菜

赞同来自: chzh9041

可以直接用ruby 将时间戳+8小时

 ruby {   
   code => "event.set('timestamp', event.get('@timestamp').time.localtime + 8*60*60)"   
 }  
 ruby {  
   code => "event.set('@timestamp',event.get('timestamp'))"  
 }  
 mutate {  
   remove_field => ["timestamp"]  
 } 



 

ObsidianHUO - 95后管道工

赞同来自:

我们的做法是 自己 生成一个字段 格式是yyyy-MM-dd HH:mm:ss:SSSZ   后面写上+0800  这样就不会出问题了。没有用logstash生成的@timestamp

zqc0512 - andy zhou

赞同来自:

用 pipeline处理也行的。

要回复问题请先登录注册