我解析了一組日誌,其中一個字段給我提供了一些問題。 格式是用Grok捕捉逗號分隔的圖案
報頭(IP,日期等)字段1 =數據,FIELD2 =數據,字段3 =數據,字段4 =數據 我有讀像
match => [ "message","%{DATA:..header..} %{DATA}=%{DATA:service},%{DATA}=%{DATA:roles}],%{DATA}=%{DATA:macaddress},%{DATA}=%{DATA:nasip}"]
有些時候一般解析器「角色」字段的「值」部分看起來像 值,[Admin]。這是由以%{DATA} =%處理{DATA:角色}], 但在其他情況下,我得到
subvalue1, subvalue2, subvalue3,
或
subvalue1, subvalue2, subvalue3, subvalue4,
或
subvalue1, subvalue2,
解析器只捕獲subval1。正如你所看到的那樣,有不同數量的sub vals,並且在失蹤時很難捕捉到。
這裏是什麼樣的記錄生成問題的一個例子:
local1--debug--10.47.130.2--2017-03-24--2017-03-24T11:29:51-04:00--11:29:51,545 10.241.186.253 ZTP0 SESSION 20 1 0 Common.Username=LABF5CHK,Common.Service=F5_HealthCHK,Common.Roles=Employee, [User Authenticated],Common.NAS-IP-Address=xxxxxxxxxxxx,Common.Request-Timestamp=2017-03-24 11:27:56-04
是否有變通方法嗎?
如果您提供一些日誌示例,我可以改進我的答案 –