我正试图使用Graylog中的Grok Patterns只提取Linux日志的最后一部分,但这比我所做的要困难。
这是我收到的信息:
3月18日11:10:01 graylog CRON[14637]:pam_unix(CRON:session(:用户根的会话已关闭
我只想保留日期、时间和;为用户根关闭会话";部分
这是我尝试过的,但没有结果:
%{GREEDYDATA} pam_unix(cron:session):
%{GREEDYDATA} session closed for user root
%{MONTH} %{BASE10NUM} %{TIME} %{GREEDYDATA}graylog CRON[18698]: pam_unix(cron:session):
也许我还在用";greedydata";错了(?(,如果有任何帮助,我们将不胜感激!
您可以使用
%{MONTH:month} %{BASE10NUM:day} %{TIME:time} %{DATA}: pam_unix(cron:session):s*%{GREEDYDATA:message}
详细信息:
%{MONTH:month}
-月份名称%{BASE10NUM:day}
-一个或多个数字%{TIME:time}
-时间模式%{DATA}
-.*?
惰性点正则表达式模式,匹配除换行符之外的任何零个或多个字符,尽可能少地匹配(注意,您可以将其更改为%{DATA:cron}
以在输出中获得graylog CRON[14637]
(: pam_unix(cron:session):
-文字: pam_unix(cron:session):
文本s*
-零个或多个空白%{GREEDYDATA:message}
-.*
正则表达式模式与行的其余部分匹配