ELK 和 Logstach

http://orchome.com/470

elasticSearch +logstach 

正则日志匹配

如果日志格式如下:

[ERROR] 2019-04-28 16:15:21,051(10) --> [main] com.netease.crawler.util.TestLogger.main(TestLogger.java:25): ==========Error:==
  java.lang.ArrayIndexOutOfBoundsException: 1
at com.netease.crawler.util.TestLogger.mainBBB(TestLogger.java:23
[INFO ] 2019-04-28 16:15:21,047(6) --> [main] com.netease.crawler.util.TestLogger.main(TestLogger.java:29): ==========Math.random=======:1.8285738636601279    
使用 grok 进行正则日志匹配:

[%{DATA:level}] %{TIMESTAMP_ISO8601:time},%{DATA:timestamp}--> [main] %{DATA:className}: %{GREEDYDATA:message}

对于多行的日志,常需要合并的
## 简单的logstach.conf 文件配置

#标准输入 input{ file{ path
=> "D:logstash-6.2.2 emplateloglog_crawler_simple.log" type => "error" start_position => "beginning" } } filter{
##可能需要单独安装multiline插件 multiline { pattern
=> "^[" negate => true what => "previous" } grok { match => ["message","[%{DATA:level}] %{DATA:day} %{DATA:time} --> [main] %{DATA:className}: "] } } #标准输出 output{ elasticsearch { #cluster => 'elasticsearch' hosts => ["127.0.0.1:9200"] #index => 'log_stash-%{+YYYY-MM-dd}' } }

即可运行;

多想,多试
原文地址:https://www.cnblogs.com/junyi0120/p/10785594.html