在filter中处理
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"]
}
                                
                                
                                
                                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"]
}
                                [尊重社区原创,转载请保留或注明出处]
本文地址:http://elasticsearch.cn/article/650
                                本文地址:http://elasticsearch.cn/article/650
6 个评论
                                            学习了                                        
                                    
                                            楼主能大概解释下每行的含义吗?                                        
                                    
                                            这是ruby的语法,将@timestamp时间加上8小时,然后复制给timestamp;
第二行是将timestamp的值再赋给@timestamp;
第三行是把timestamp去除掉
                                    第二行是将timestamp的值再赋给@timestamp;
第三行是把timestamp去除掉
                                            不能认同。它只是时区不对,不是时间戳不对。你这一改,时间就真的不对了。                                        
                                    
                                            每个人需求不同,只是一种处理方式而已                                        
                                    
                                            我的索引名称时差8小时,又不想把@timestamp的时间改掉,该如何解决呢?                                        
                                    
 
                                         
                                        