logstash grok捕获重复模式

时间:2015-12-17 01:52:55

标签: logstash logstash-grok

我的输入类似于以下

  

2015-12-02T12:39:57.546461 + 08:00 222.55.201.19 c):   start_time =“2015-12-02 ......其他一些日志信息...... src = 192.168.1.153   dst = 8.8.8.8 src_port = 51145 dst_port = 13 ...其他一些日志信息......   start_time =“2015-12-02 src = 192.168.1.123 dst = 8.8.8.8 src_port = 52245   dst_port = 53 ...其他一些日志信息...

上面有很多src和dst,所有这些都在一行中。

当我使用"message" => "src=%{IP:SRC} dst=%{IP:DST}"时。我设法只得到第一个src和dst。我无法获得剩余的src和dst。

我应该使用什么命令来实现我的需要?我听说我可能需要做一些拆分,但我找不到相关的信息。

2 个答案:

答案 0 :(得分:1)

我通过解决方法解决了这个问题。我已经改变了源的生成方式。源现在每行都有记录。

我也试过"分裂"方法。它确实解决了问题,但代码量显着增加

答案 1 :(得分:1)

另一个更好的方法是kv过滤器