我想要Grok两个不同的字段,例如电子邮件地址和IP。
我正在做以下事情:
grok {match => [ "message", "%{EMAILADDRESS:username_client}" %{IP:client_ip} ]}
第一位没问题
%{IP:CLIENT_IP}
错了。 "消息"基本上是混合如下:
Whatever whatever 200 300 100 example@example.com whatever whatever IP
(或类似的东西)
答案 0 :(得分:1)
您可以使用.*
指定任意0个或更多字符模式(贪婪版本,如果IP位于行尾,请使用)或.*?
(懒惰版本) ,如果电子邮件和IP之间的字符很少,则使用它并将其置于2个grok模式之间:
"%{EMAILADDRESS:username_client}.*%{IP:client_ip}"
^^