如何在Grok自定义模式中转义反斜杠

时间:2017-10-12 02:09:47

标签: regex logstash logstash-grok kibana-5

我有一个输入

app\exceptions\SomeException

和模式是

%{EXCEPTION_CLASS:exception}

和自定义模式

{"EXCEPTION_CLASS" : "app\\\\exceptions\\\\SomeException"}

在Grok调试器中(在Kibana中),输出为

{
  "exception": "app\\exceptions\\SomeException"
}

这不是我所期待的。 首先,使用双反斜杠与输入不匹配。

{"EXCEPTION_CLASS" : "app\\exceptions\\SomeException"}
#This gives no output

其次,我得到了四个反斜杠的输出,但是它有两个反斜杠,我所期望的是单个反斜杠,就像输入一样。

这是如何工作的,如何在Grok模式中正确转义反斜杠?

1 个答案:

答案 0 :(得分:0)

我试过你的例子。以下grok使用此输入“\ app \ exection \ somethingother”

为我工作
grok{
    match => { "message" => "\\%{WORD:app}\\%{WORD:exception}\\%{WORD:other}" }
}

所以\逃脱\对我来说很好。