Ich versuche, ein benutzerdefiniertes Muster hinzufügen, um zu Logstash Daten aus dieser Art von Log-Zeile zu erfassen:Erstellen ein benutzerdefinierter grok Muster in Logstash
[2017-11-27 12:08:22] production.INFO: {"upload duration":0.16923}
folgte ich die Anweisungen auf Logstash guide for grok und erstellt ein Verzeichnis genannt Muster mit einer Datei in nannte es besonders die enthalten:
POSTFIX_UPLOAD_DURATION upload duration
und hinzugefügt, um den Pfad der Konfigurationsdatei:
grok {
patterns_dir => ["./patterns"]
match => { "message" => "\[%{TIMESTAMP_ISO8601:timestamp}\] %{POSTFIX_UPLOAD_DURATION: upload_duration} %{DATA:log_env}\.%{LOGLEVEL:severity}: %{GREEDYDATA:log_message}" }
}
Allerdings erhalte ich diese Fehlermeldung:
Pipeline aborted due to error {:exception=>#<Grok::PatternError: pattern %{POSTFIX_UPLOAD_DURATION: upload_duration} not defined>
Auch nicht enthalten einige Protokollzeilen die ‚Upload Dauer‘ Feld, wird dies die Pipeline brechen?