美文网首页
kibana discover 日期问题

kibana discover 日期问题

作者: 凝碧_0e80 | 来源:发表于2019-03-06 10:50 被阅读0次

    在用kibana discover的时候,碰到个问题,我的Date类型的格式为

    "CreateTime":{
       "type": "date",
      "format": "yyyy-MM-dd HH:mm:ss",
       "locale":"zh_CN",
      "doc_values":true
     }
    

    在用elasticsearch查询的时候,这样的格式没有问题,但是在discover中,显示的日期会是CreateTime+8小时,而discover中的查询也是按+8小时来算,这样时间筛选就没有意义了。为了方便的使用discover的功能,这个问题必须解决。

    时间的格式问题

    修改默认的时区

    可以在Management > Kibana > Advanced Setting 里面修改Date format和Timezone for date formatting,改成本地时区,但是这样的修改,时间格式能显示正确,却在时间筛选的时候出现问题,比如选择Last 15 minutes 的时间区间,却发现出来的时间不对,点击inspect,查看Request timestamp信息,发现请求的时间依然是按8小时前来算的,也就是说这是8小时前的15分钟的数据;

    修改CreateTime显示格式

    在Management > kibana > Index Patterns ,找到你的索引,修改CreateTime的格式(如图)



    这样在discover 里面CreateTime就能按正确的时间格式显示了。

    这两种方法可以综合起来

    时间筛选区间

    默认不管你设置了哪个时区,在discover上面筛选的时候,都是从8个小时前算的,因为discovery用的是时间戳为参数去请求,所以这个时候elasticsearch也是按时间戳去解析,CreateTime没带时区的话,就用会默认时区。
    所以只能调整CreateTime的时间格式,让这个CreateTime自带时区信息,

    "CreateTime":{
       "type": "date",
      "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZ",
       "locale":"zh_CN",
      "doc_values":true
     }
    

    这样,时间筛选的问题终于正确了

    相关文章

      网友评论

          本文标题:kibana discover 日期问题

          本文链接:https://www.haomeiwen.com/subject/iqxtpqtx.html