Ich versuche, ein Timestamp-Feld in Logstash einzugeben und ich erhalte eine Dateparsefailure Nachricht.Logstash - Benutzerdefinierte Timestamp Error
Meine Nachricht -
2014.08.01; 11: 00: 22,123
Pipeline Datei
input {
stdin{}
#beats {
# port => "5043"
# }
}
# optional.
filter {
date {
locale => "en"
match => ["message", "YYYY-MM-dd;HH:mm:ss.SSS"]
target => "@timestamp"
add_field => { "debug" => "timestampMatched"}
}
}
output {
elasticsearch {
hosts => [ "127.0.0.1:9200" ]
}
stdout { codec => rubydebug }
}
Kann mir jemand sagen, was ich fehle?
aktualisieren 1
ich auf den Link genannt - How to remove trailing newline from message field und jetzt funktioniert es.
Aber meiner Log-Nachricht, ich habe mehrere andere Werte als Zeitmarke
<B 2014-08-01;11:00:22.123 Field1=Value1 Field2=Value2
Wenn ich diese geben als Eingabe, es funktioniert nicht. Wie lese ich einen Teil des Logs und mache es als Timestamp?
aktualisieren 2
es funktioniert jetzt.
Changed die Konfigurationsdatei wie unten
filter {
kv
{
}
mutate {
strip => "message"
}
date {
locale => "en"
match => ["timestamp1", "YYYY-MM-dd;HH:mm:ss.SSS"]
target => "@timestamp"
add_field => { "debug" => "timestampMatched"}
}
}