Regex grok的自定义正则表达式
我的问题是关于logstash中的grok过滤器。对于logstash筛选器,我需要解析一个日志文件。下面是日志语句示例 2017-07-31 09:01:53135-信息 [QuorumPeer[myid=1]/0:0:0:0:0:0:0:2181:ZooKeeperServer@617] - 已建立会话0x15D964D6546F4,协商超时为5000 客户机/10.191.202.89:56232 我想使用正则表达式解析[]之间的语句,但没有成功?从上面Regex grok的自定义正则表达式,regex,logstash-grok,grok,Regex,Logstash Grok,Grok,我的问题是关于logstash中的grok过滤器。对于logstash筛选器,我需要解析一个日志文件。下面是日志语句示例 2017-07-31 09:01:53135-信息 [QuorumPeer[myid=1]/0:0:0:0:0:0:0:2181:ZooKeeperServer@617] - 已建立会话0x15D964D6546F4,协商超时为5000 客户机/10.191.202.89:56232 我想使用正则表达式解析[]之间的语句,但没有成功?从上面 QuorumPeer[myid=1
\[(?<threadid>\w+[^/]*/[\d:]+):(?<classname>[^\]@]+)@(?<linenumber>\d+)\]
\[(?\w+[^/]*/[\d:]+):(?[^\]@]+)@(?\d+]
详细信息
-文字\[
[
-将“threadid”分组:1+字字符,然后是0+字符,而不是(?\w+[^/]*/[\d:]+)
,/
,然后是1个或多个数字或/
(请注意,您可以根据需要调整此模式,例如,也可以将其编写为:
,但不会那么安全)(?*?[\d:]+)
-冒号:
-组“classname”:除(?[^\]@]+)
和]
@
-一个@
字符@
-组“行号”:1个或多个数字(?\d+)
-文字\]
]
您能添加您已经尝试过的内容吗?您能发布您的整个conf文件吗?这样我就可以看到所有这一切是如何完成的?我一整天都在试图弄清楚如何让自定义正则表达式工作,即使在kibana调试器中,我也无法正确使用它。谢谢你回答这个问题。我不想在正则表达式中硬编码QuorumPeer。如果出现以下语句,它将不起作用:[NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@178]