突发日志记录完成后,日志显示无序

时间:2017-08-30 11:18:52

标签: elasticsearch logstash kibana logback logstash-logback-encoder

当日志显示具有相同的时间戳时,其中一些似乎不按顺序显示。通过阅读一些主题,我无法找到合适的解决方案。但我相信必须有一些事情要做,因为这个问题早在Logstash 1报道。

基本上,我使用logstash使用json行编解码器[使用logstash-logback-encoder此处]侦听某个端口上的传入tcp。目前,过滤器为空,我将数据输出到elasticsearch和stdout(编解码器rubydebug)。

我的IDE中的控制台日志:

2017-Aug-30 15:15:30.191 [main] INFO  com.sbsatter.logbackLogstash.App - Testing LOG Order;
Expected Order: 1 => 10 
2017-Aug-30 15:15:30.193 [main] INFO  com.sbsatter.logbackLogstash.App - 1 
2017-Aug-30 15:15:30.194 [main] INFO  com.sbsatter.logbackLogstash.App - 2 
...
2017-Aug-30 15:15:30.195 [main] INFO  com.sbsatter.logbackLogstash.App - 9 
2017-Aug-30 15:15:30.195 [main] INFO  com.sbsatter.logbackLogstash.App - 10 

启动logstash的终端相应地读取:

{
    "@timestamp" => 2017-08-30T09:15:30.197Z,
          "port" => 47820,
      "@version" => "1",
          "host" => "127.0.0.1",
          "time" => "2017-08-30 15:15:30.191+0600",
       "message" => "Testing LOG Order;\nExpected Order: 1 => 10"
}
{
    "@timestamp" => 2017-08-30T09:15:30.198Z,
          "port" => 47820,
      "@version" => "1",
          "host" => "127.0.0.1",
          "time" => "2017-08-30 15:15:30.193+0600",
       "message" => "1"
}
{
    "@timestamp" => 2017-08-30T09:15:30.198Z,
          "port" => 47820,
      "@version" => "1",
          "host" => "127.0.0.1",
          "time" => "2017-08-30 15:15:30.194+0600",
       "message" => "2"
}
.....
{
    "@timestamp" => 2017-08-30T09:15:30.216Z,
          "port" => 47820,
      "@version" => "1",
          "host" => "127.0.0.1",
          "time" => "2017-08-30 15:15:30.195+0600",
       "message" => "9"
}
{
    "@timestamp" => 2017-08-30T09:15:30.224Z,
          "port" => 47820,
      "@version" => "1",
          "host" => "127.0.0.1",
          "time" => "2017-08-30 15:15:30.195+0600",
       "message" => "10"
}

但是,kibana显示以下内容:皱眉: result in kibana

虽然这里的差异并不大,但是当与实时日志一起使用时,更改的顺序会使日志显得无意义。我该如何解决这个问题?

注意,我也在elasticsearch forum中提出了这个问题。我通过文档潜水,找到了与此相近但无济于事的任何内容。

0 个答案:

没有答案