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\template\log\log_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}' } }

 

即可运行;

 

posted @ 2019-04-28 18:03  junyi5257  阅读(308)  评论(0编辑  收藏  举报
北岸小站