我正在尝试通过grok过滤器解析此日志条目中的值
type=disassociation radio='0' vap='0' client_mac='F6:A5:64:8F:31:20' channel='11' reason='1' instigator='5' duration='957.917574050' auth_neg_dur='0.069978132' last_auth_ago='957.847595918' is_wpa='1' full_conn='1.549515776' ip_resp='1.549515776' ip_src='10.128.20.31' http_resp='1.619493908' arp_resp='1.549515776' ar`p_src='10.128.11.50' dns_server='100.55.333.444' dns_req_rtt='0.039987504
我的代码段是
if "type=" in [contents] {
grok {
match => ["contents", "(type=)(?<auth_type>disassociation|association|wpa_auth)?([ ])(radio=)(')(?<radio>?:[+-]?(?:[0-9]+))(')([ ])(vap=)(')(?<vap>(?:[+-]?(?:[0-9]+)))(')([ ])(client_mac=)(')%({MAC:client_mac})(')"]
}
我遇到一个target of repeat operator is not specified
错误。不明白我在哪里错了
答案 0 :(得分:0)
更新到我的查询-找到了解决方案!
kv插件完成了解析具有key=value
语法的字段的所有工作。
我安装了插件并添加了
kv {}
位于grok过滤器下方,它很好地解析了每个键值。