我刚刚开始使用 Logstash、ElasticSearch 和 Kibana 来实现日志的可视化,目前遇到了一些问题。
我有一个 logstash 正在收集的日志文件,我想在将这些字段写入 ElasticSearch 之前从日志条目中提取字段。
我已经在我的 logstash 配置文件中定义了一个包含多个命名捕获组的过滤器,但此时只有这些命名捕获组中的第一个是匹配的。
我的日志文件如下所示:
[2014-01-31 12:00:00] [FIELD1:SOMEVALUE] [FIELD2:SOMEVALUE]
我的logstash过滤器看起来像下面这样:
if[type] == "mytype { grok { match => [ "message", "(?<TIMESTAMP>regex)", "message", "(?<FIELD1>regex)", "message", "(?<FIELD2>regex)" ] } }
我已经验证了我所有字段的正则表达式都是正确的,但是当我转到 Kibana 仪表板时,FIELD1 和 FIELD2 没有出现。
如果有人能对此有所了解,我将不胜感激。
谢谢
凯文