i haben 3 Knoten Setupjson Senden von einem zu einem anderen logstash
10.xx1 - Anwendung und filebeat 10.xx2 - Maschine zum Parsen und logstash 10.xx3 - unter zentralisierter logstash Knoten, von wo wir müssen Nachrichten in elastische Suche
in 10.xx2 schieben, wenn ich den Ausgabe-Codec auf stdout setze, kann ich die Nachrichten sehen, die von 10.xx1 kommen.
Jetzt muss ich alle Json-Nachrichten von 10.x.x.2 zu 10.x.x.3 weiterleiten. Ich habe versucht, TCP zu verwenden. Aber die Nachrichten werden nicht gesendet.
10.xx2 logstash conf Datei
input {
beats {
port => 5045
}
}
output{
#stdout { codec => rubydebug }
tcp{
host => "10.x.x.3"
port => 3389
}
10.xx3 logstash conf Datei
input{
tcp{
host => "10.x.x.3"
port => 3389
#mode => "server"
#codec => "json"
}
}
output{
stdout{ codec => rubydebug }
}
ist es ein Plugin, das JSON-Daten von einem logstash an einen anderen logstash Server senden können
TCP ist schwierig, als Ausgabe für Json zu arbeiten, wegen der möglichen Newline-Zeichen an Ihrem Json-Ausgang. Eine gute Möglichkeit zu tun, was Sie brauchen, ist die Verwendung von Gelf-Ausgabe (da es eine gültige JSON generiert). –