我正在尝试使用grok解析下面的日志
[2018-10-06 12:04:03:0227] [MYMACHINENAME]
而我使用的grok表达式是
/[%{DATESTAMP:date}/] /[%{WORD:data}%/]
,此表达式不起作用。我尝试用主机名替换WORD,即使它不起作用,并且如果我尝试单独使用任何一个匹配器,则它都可以工作。 谁能为我提供更好的教程页面来学习grok表达式?
答案 0 :(得分:1)
模式中几乎没有错误。
首先,您使用反斜杠/
而不是正斜杠\
来转义字符。其次,您不需要%
来最后匹配]
。
第三,DATESTAMP
与您的日期格式不匹配,您需要TIMESTAMP_ISO8601
。
您的最终模式应该变成
\[%{TIMESTAMP_ISO8601}\] \[%{WORD}\]
答案 1 :(得分:0)
正则表达式模式DATESTAMP
与您的字符串不正确。尝试使用TIMESTAMP_ISO8601
。
在这里您可以看到所有grok regex模式:grok-patterns。