Ich erstelle eine Rsyslog-Vorlage, um Apache-Logs in JSON zu analysieren, um an die elastische Suche zu senden.Rsyslog Vorlage Erfassungsgruppen
Ich versuche derzeit, die Anfrage Zeit von der access_log zu erfassen, kann aber nicht scheinen, meine regulären Ausdruck ordnungsgemäß zu funktionieren.
Rsyslog Config der Vorlage konstant:
constant(value="\",\"request_time\":\"") property(name="msg" regex.expression="(\\[(.*)\\])" regex.type="ERE" regex.match="2")
ich ständig "NO MATCH" aus dem, obwohl die Regex auf der rsyslog regex Testseite zu funktionieren scheint. Wenn ich regex.match durch 0 ersetze, erhalte ich den vollen Zeitstempel, aber er enthält die [], die ich vermeiden möchte.
Beispiel Anfrage:
192.168.33.1 - - [30/Mar/2016:08:45:38 +0000] "GET /TEST HTTP/1.1" 404 281 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"
Irgendwelche Vorschläge geschätzt würde. Danke!