2016-05-23 79 views
1

我想使用logstash过滤器解析我的应用程序日志。日志文件内容是类似下面Logstash grok过滤器:解析定制应用程序日志

17 May 2016 11:45:53,391 [tomcat-http--10] INFO com.visa.vrm.aop.aspects.LoggingAspect - RTaBzeTuarf |macBook|com.visa.vrm.admin.controller.OrgController|getOrgs|1006 

我试图创建一个使用logstash仪表板(线图),并希望显示在它的活动。例如,请求来自某个具有相关ID的服务器,并且必须查看使用相应方法调用哪个类以及执行需要多长时间。

的消息是这样的:

correlation id | server-name | class name | method name | time taken 
log file e.g 
RTaBzeTuarf |macBook|com.visa.vrm.admin.controller.OrgController|getOrgs|1006 

我无法创建神交模式/用于上述消息过滤器。有人能就此提出建议吗?

回答

1

试一下:

(?<timestamp>%{MONTHDAY} %{MONTH} %{YEAR} %{HOUR}:%{MINUTE}:%{SECOND}) \[%{NOTSPACE:thread}\] %{LOGLEVEL:loglevel} (?<logger>[A-Za-z0-9$_.]+) - %{GREEDYDATA:correlationId}\|%{GREEDYDATA:servername}\|%{GREEDYDATA:className}\|%{GREEDYDATA:methodName}\|%{NUMBER:time}$