1.初步分离
业务系统在运行期间会抛出来一些运行期异常日志,监控这些日志,过滤多余其它日志,然后给予相应owner告警就成为异常监控的目标之一。
logstash配置如下:
input {
file {
type => "exception"
path => "/Users/xxxxx/Documents/xxxxx/apache-tomcat-7.0.53/bin/logs/*.log"
}
}
filter {
if ([message] =~ "^.+(INFO|DEBUG|WARN|TRACE).+") {
drop {}
}
if ([type] == "exception") {
multiline {
pattern => "(^.+Exception: .+)|(^\s+at .+)|(^\s+... \d+ more)|(^\s*Caused by:.+)"
what => "previous"
}
}
if "multiline" not in [tags] {
drop {}
}
}
output {
stdout { codec => rubydebug }
}
删除非ERROR的日志,并且异常日志抽取完后,删除tags不包含multiline的事件。
2.精确分离
初步分离完成之后,其实对异常类型,异常信息详情,异常堆栈有不同的需求度。因此精确分离的目标就是进一步分拆异常信息,为后续的异常统计分析提供数据支持。
后续补充完善......
时间: 2024-10-29 00:25:15