Senden json-format loggen zu kibana mit filebeat, logstash und elasticsearch?
Habe ich logs wie diese:
{"logId":"57aaf6c8d32fb","clientIp":"127.0.0.1","time":"03:11:29 pm","uniqueSubId":"57aaf6c98963b","channelName":"JSPC","apiVersion":"v1","modulName":null,"actionName":"apiRequest","typeOfError":"","statusCode":"","message":"In Auth","exception":"In Auth","logType":"Info"}
{"logId":"57aaf6c8d32fb","clientIp":"127.0.0.1","time":"03:11:29 pm","uniqueSubId":"57aaf6c987206","channelName":"JSPC","apiVersion":"v2","modulName":null,"actionName":"performV2","typeOfError":"","statusCode":"","message":"in inbox api v2 5","exception":"in inbox api v2 5","logType":"Info"}
Möchte ich Sie ermutigen, sich kibana
. Ich bin mit filebeat zum senden von Daten an logstash, mit der folgenden Konfiguration:
filebeat.yml
### Logstash as output
logstash:
# The Logstash hosts
hosts: ["localhost:5044"]
# Number of workers per Logstash host.
#worker: 1
Nun mit folgender Konfiguration, die ich ändern möchte codec-Typ:
input {
beats {
port => 5000
tags => "beats"
codec => "json_lines"
#ssl => true
#ssl_certificate => "/opt/filebeats/logs.example.com.crt"
#ssl_key => "/opt/filebeats/logs.example.com.key"
}
syslog {
type => "syslog"
port => "5514"
}
}
Aber trotzdem bekomme ich die logs im format-string:
"Nachricht":
"{\"logId\":\"57aaf6c96224b\",\"clientIp\":\"127.0.0.1\",\"Zeit\":\"03:11:29
pm\",\"channelName\":\"JSPC\",\"apiVersion\":null,\"modulName\":null,\"actionName\":\"404\",\"typeOfError\":\"EXCEPTION\",\"statusCode\":0,\"message\":\"404
Seite gestoßen
http:\/\/localjs.com\/uploads\/NonScreenedImages\/profilePic120\/16\/29\/15997002iicee52ad041fed55e952d4e4e163d5972ii4c41f8845105429abbd11cc184d0e330.jpeg\",\"logType\":\"Error\"}",
Bitte helfen Sie mir dieses Problem lösen.
InformationsquelleAutor learner | 2016-08-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Parsen der JSON-log-Zeilen in Logstash, die gesendet wurden von Filebeat Sie brauchen, um eine json-filter statt einen codec. Dies ist, weil Filebeat sendet seine Daten als JSON und den Inhalt Ihrer log-Zeile enthalten sind, in die
message
Feld.Logstash config:
Filebeat config:
In der Filebeat config, ich habe eine "json" - tag, um das Ereignis so, dass die json-filter können bedingt auf die Daten angewendet.
Filebeat 5.0 ist in der Lage, zum Parsen der JSON-ohne den Einsatz von Logstash, aber es ist immer noch ein alpha-release im moment. Dieser blog post mit dem Titel Strukturiertes logging mit Filebeat zeigt, wie das Parsen von JSON mit Filebeat 5.0.
input { beats { port => 5044 } } filter { if [tags][json] { json { source => "message" } } } output { elasticsearch { hosts => "localhost:9200" manage_template => false index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}" document_type => "%{[@metadata][type]}" } }
, nicht Ihre Konfiguration. Vielen Dank für die Hilfe.Hi @J, stackoverflow.com/questions/53045258/... dies ist meine Frage. Ich bin auch mit dem gleichen Problem. Meine fielebat über 5.0 und ich kann nicht finden, eine Auflösung. Ich habe versucht, Ihnen die Lösung auch
InformationsquelleAutor A J
Vom FileBeat 5.x Sie können es tun, ohne mit Logstash.
Filebeat config:
Filebeat ist leichter dann Logstash.
Auch wenn Sie einfügen müssen, um elasticsearch in der version 2.x Sie können diese Funktion verwenden, von FileBeat 5.x
Reales Beispiel gefunden werden kann hier
Sie verlieren die Fähigkeit zu kontrollieren, den Zugriff auf elastic zentral. Wenn Sie viele filebeat Knoten, alle haben das auth-keys für elastische, dann sind Sie elastisch auth änderungen, die Sie aktualisieren müssen alle vs eine logstash
InformationsquelleAutor Netanel Malka
Habe ich abgekocht internet für die exakt gleiche problem, das Sie haben und versucht, die verschiedenen Vorschläge, einschließlich derjenigen, über. Aber, nichts half, also hab ich es auf die altmodische Weise. Ich ging auf elasticsearch-Dokumentation auf filebeat Konfiguration
und alles, was erforderlich war (keine Notwendigkeit für Filter config in logstash)
Filebeat config:
Kopien verschachtelte json-Schlüssel auf oberste Ebene in das Ausgabe-Dokument.
Meine filebeat version 5.2.2.
InformationsquelleAutor gaukhar