如何regexp Kibana过滤器?

时间:2016-11-11 16:12:55

标签: regex kibana

我想过滤我的Kibana日志。在这些中,有很多堆栈跟踪的字段 stacktrace 。我想不要显示一些堆栈跟踪类型。

为此我添加了一个带有以下值的stacktrace的过滤掉值过滤器:

{
  "query": {
    "regexp": {
      "stacktrace": "+ConnectException+"
    }
  }
}

在此处记录:https://www.elastic.co/guide/en/elasticsearch/reference/1.4/query-dsl-regexp-query.html

这不起作用,在这种情况下找到所有 ConnectException ,如:

java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java) ~[na:1.8.0_102]
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)

1 个答案:

答案 0 :(得分:0)

这里的问题是 - +是正则表达式中的元字符(.字符也是如此),因此在您假设时它不匹配。

过滤器需要的是:

{
  "query": {
    "regexp": {
      "stacktrace": "java\.net\.ConnectException.*"
    }
  }
}

(然后将其设置为排除)