如何使用logstash过滤Java日志?

时间:2019-05-06 07:54:28

标签: java logstash

我只需要过滤java致命日志,然后使用logstash管道将该日志放入Elasticsearch索引中。

我将日志放入了弹性搜索索引。但它具有所有日志(信息,调试)。

示例日志条目:

2019-05-06 14:37:23 DEBUG Scheduler : Starting Scheduler... 2019-05-06 14:37:24 INFO Scheduler : Quartz scheduler started

1 个答案:

答案 0 :(得分:0)

我想您的日志条目可能是这样的。

例如:

Sample  Pop     a1      a10     a100
F295    Pesche  A   C   A   T   A     A
F296    Pesche  G   T   C   G   A     C
F297    Pesche  A   A   G   G   T     T
F298    Pesche  A   C   A   G   C     G

对于此输入,Logstash 2019-04-23 10:12:10 INFO - 12345 - SQL - sqlQuery1 - 12 2019-04-23 10:12:10 FATAL - 12345 - SQL - sqlQuery2 - 34 2019-04-23 10:12:10 INFO - 12345 - TASK_END - end 可能是这样;

filter

我正在使用filter { grok { match => [ "message" => "%{NOTSPACE:datetime} - %{LOGLEVEL:loglevel} - %{NOTSPACE:taskid} - %{NOTSPACE:logger} - %{WORD:label}( - %{INT:duration:int})?" ] } if [loglevel] =~ "FATAL" { drop { } } } output { elasticsearch { hosts => ["elasticsearch:9200"] index => "indexfatal-%{+YYYY.MM.dd}" } } 插件映射输入条目,然后检查并删除非FATAL条目以将它们从索引中排除。

这可能需要一些微调才能使用您的日志。