logstash 解析 windows 事件 ID 1102

logstash parse windows event id 1102

你好,我是 logstash 的新手。当我试图解析 logstash 中的 @message 字段时,它是 nxlog 的输出。谁能建议我如何在 grok 中使用正则表达式来解析下面的@message 字段。

"The audit log was cleared.\r\nSubject:\r\n\tSecurity ID:\tS-1-5-21-1753799626-3523340796-3104826135-1001\r\n\tAccount Name:\tJhon\r\n\tDomain Name:\tJactrix\r\n\tLogon ID:\t1x12325"

我正在使用以下 grok 模式来解析

match => { "%{@message}" => "%{GREEDYDATA:msg}\r\nSubject:%{DATA}\r\n\tSecurity ID:\t%{USERNAME}\r\n\tAccount Name:%{GREEDYDATA}\r\n\tDomain Name:\t%{GREEDYDATA}\r\n\tLogon ID:\t%{GREEDYDATA}" }

谢谢

作为初学者,您可以尝试以下模式:

%{GREEDYDATA:msg}.*Subject:%{GREEDYDATA:subject}.*Security ID:%{GREEDYDATA:securityId}.*Account Name:%{GREEDYDATA:accountName}Domain Name:%{GREEDYDATA:domainName}Logon ID:%{GREEDYDATA:logonID}

然后尝试根据您的日志文件的结构优化模式(例如,accountName 可能是 %{WORD} 或 ....)。您可以使用 http://grokdebug.herokuapp.com/ to test your pattern. A list of predefined patterns is found here: https://github.com/logstash-plugins/logstash-patterns-core/tree/master/patterns