elk的logstash怎么过滤出报错的模块
日志示例:
2016-08-25 18:03:25
[INFO]-[com.asin.module.industry.init()]: 初始化==null
2016-08-25 18:03:25
[ERROR]-[com.asin.module.product.update()]: 更新异常!!!
java.lang.NullPointerException
at com.asin.module.product(Aproduct.java:37)
at com.asin.module.product.productController.list(productController.java:64)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.jfinal.aop.Invocation.invoke(Invocation.java:73)
at com.asin.psa.interceptor.PsaLoginInterceptor.intercept(PsaLoginInterceptor.java:29)
at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
at com.asin.sa.interceptor.SaLoginInterceptor.intercept(SaLoginInterceptor.java:32)
at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
at com.asin.
1、过滤出ERROR的日志
2、过滤出ERROR、并匹配出模块
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
回复
用 s 或者 n 表示换行,都不能被匹配
回复
时间戳和日志正文还有个换行?我看你复制出来的怎么还有个换行?一般日志格式都不会这么设计的
我们公司比较创新,时间戳后面换行了。第一个问题解决了,第二个问题没解决
回复
通常你可以认为前面几个都是日志的元数据,比如时间戳,日至级别,class等等。这些通常是不换行的,因为方便使用grep/sed等命令行工具进行日志过滤。换行的通常是最后的content部分。一旦换行就难以用grep/sed/awk这些工具处理。所以通常日志设置都是元数据在一行。看下面我的回复,抓出来了
回复
谢谢您的这番指点!
正则解析一把,把loglevel字段抓出来不就完了?这些在官方的grok filter都有相关文档的,自行阅读文档解决
回复 按照每个时间戳后面有个换行给你匹配了: