Ich möchte Daten (Zeitstempel und Nachricht) über Xpath-Plugin in Logstash aus XML-Dateien extrahieren, um nur sie in Felder in kibana anzuzeigen.Extrahieren von Daten mit Logstash und Xpath
XML Beispiel:
<log4j:event logger="logger4test" timestamp="1496297008092"><log4j:message>sample message</log4j:message></log4j:event>
Logstash conf:
input {
file {
path => "/opt/logs/*"
start_position => beginning
sincedb_path => "/dev/null"
type => "xml"
}
}
filter {
xml {
remove_namespaces => true
source => "file"
store_xml => false
xpath => [
"//event/@timestamp", "time",
"//message/text()", "lmessage"
]
}
if [type] == "xml" {
mutate {
replace => [
"time", "%{time}",
"lmessage", "%{lmessage}"
]
}
}
}
jedoch das Ergebnis in lmessage ist der Wert% {lmessage} und in der Zeit:% {time} und nicht wie erwartet die echte Nachricht und Zeit.
Kann mir bitte jemand helfen? Es gibt auch keine Fehler in den Logstash-Protokollen.