解决logstash时区相差8小时问题最详细解答

    问题说明:
        1、使用logstash创建索引,默认时区为UTC,与我们东八区相差八小时,如果我们以天创建索引的时候会在早上8点才会创建当天的索引,这就会导致8点以前的日志存在前一天的索引里面,不方便查看。
        2、新版本的logstash没有调整时区的参数,需要我们通过修改@timestamp变量参数来解决,但如果我们在时间戳timestamp默认加上8小时会导致在kibana上的时间戳又多了8小时(kibana会替我们转换),所以不能直接修改timestamp
    解决方案:通过新增一个变量将timestamp赋予该变量index_date,使用该变量+8小时创建索引
  
 [app@localhost]$ vim logstash-sample.conf
    


filter {
# 新增索引日期,解决地区时差问题
ruby {
        code => "event.set('index_date', event.get('@timestamp').time.localtime + 8*60*60)"    #新增变量index_date,值为timestamp + 8小时
}
# timestamp 格式为 2022-02-02T15:25:25,136Z,接下来的操作是要

你可能感兴趣的:(ELK,elk,logstash,索引创建)