ELK堆栈日志时间戳

时间:2015-12-11 07:38:27

标签: elastic-stack

一般来说,我对ELK堆栈相对较新,我正在尝试从2014年开始处理一些旧的日志以进行可视化。我想知道当我将它们添加到我的转发器客户端时,是否有一种方法可以让Kibana显示与创建日志相同的时间戳而不是时间戳。

这是我的过滤器部分的摘录

filter

1 个答案:

答案 0 :(得分:0)

时间戳只显示logstash获取日志并保存到elasticsearch的时间。 Logstash无法知道何时创建了该日志。唯一可能的方法就是知道这一点,如果你把时间保存在日志中,如果它们是系统日志或你自己的日志里面有时间戳的话。然后,您可以在logstash中创建一个过滤器,然后仅用作键。

你可以使用grok过滤器。

http://grokconstructor.appspot.com/do/match

示例:

输出日志

55.3.244.1 GET /index.html 15824 0.043

过滤

%{IP:client} %{WORD:method} %{URIPATHPARAM:request} %{NUMBER:bytes} %{NUMBER:duration}

Logstash config

input {
      file {
        path => "/var/log/http.log"
      }
    }
    filter {
      grok {
        match => { "message" => "%{IP:client} %{WORD:method} %{URIPATHPARAM:request} %{NUMBER:bytes} %{NUMBER:duration}" }
      }
    }