2014-09-05 6 views
7

Ich lese a blog post über das Einrichten von Logstash, Elasticsearch und Kibana, und der Autor schlug vor, NXLog zu verwenden, um Protokolle von verschiedenen Computern zu versenden. Ein typisches verteiltes Szenario, das in "The Logstash Book" dargestellt wird, zeigt, wie Logstash sowohl in der Versand- als auch in der Indexierungsrolle verwendet werden kann. Wir experimentieren gerade mit Logstash und richten es so ein, dass Logs nach Elasticsearch geschickt werden. Also frage ich mich, warum Leute NXLog als Log-Versender für Logstash wählen, anstatt Logstash an beiden Enden zu verwenden.Warum versenden Leute Logs mit NXLog und nicht Logstash selbst?

+0

Es ist nur ein weiteres nützliches Werkzeug für Menschen, die sehr häufig Logging-Infrastruktur haben. Sie können Ihren eigenen Prozess schreiben, wenn Sie das einfacher finden. – coffeeaddict

Antwort

17

Das logstash-forwarder Projekt, die früher als "Lumberjack" bekannt ist, erklärt es wie folgt:

Ressourcennutzung Bedenken

empfundene Probleme: Einige Benutzer logstash Versionen als "groß" anzuzeigen oder haben eine generalisierte Angst vor Java.

Aktuelle Probleme: Logstash, für jetzt, läuft mit einer Stellfläche, die ist nicht zu unterversorgten Systemen wie EC2 Mikro Instanzen; auf anderen Systemen ist es in Ordnung. Dieses Projekt wird bis existieren, das aufgelöst wird.

Transportprobleme

Wenige log Transportmechanismen sorgen für Sicherheit, geringe Latenz und Zuverlässigkeit.

Das von diesem Projekt verwendete Lumberjack-Protokoll existiert, um ein Netzwerkprotokoll für die Übertragung bereitzustellen, das sicher ist, niedrige Latenz, niedrige Ressourcennutzung und zuverlässig.

A Logstash Versender Instanz ist nicht besonders Schwergewicht, aber wenn Ihre Maschine nur 1-2GB RAM hat, kann es schwierig sein, zu beiläufig mehrere hundert MB an eine andere JVM-Instanz zuordnen.

Eine weitere Überlegung: Was ist, wenn Ihre Versenderknoten ein Betriebssystem ausführen, das nicht von Logstash unterstützt wird? Logstash kann jetzt unter Windows laufen, aber es ist immer noch auf der fehlerhaften Seite der Dinge. Ich kann nicht ausdrücklich für NXLog in diesem Bereich bürgen, aber ich nehme an, es ist eine beliebte Wahl.

+1

Vielen Dank. Ausgezeichnete Antwort! –

+1

1) Vermeiden Sie die Installation von Java (welches Java? Welche Version?) Auf vielen Rechnern, wo wir es sonst nicht hätten. 2) nxlog kann das Windows Event Log schön lesen und kann als JSON über TLS versendet werden (also binden wir uns nicht zu stark an nxlog). –

+0

Aber welcher Vorteil hat NXLog gegenüber dem leichten "Logstash Forwarder" -Agenten, den Logstash bietet? – Mark

1

Wir haben den Versand mit RSyslog statt mit LogStash implementiert, weil wir Java möglichst von unseren Hosts fernhalten möchten. Es macht die LogStash-Konfiguration auf dem Loghost/Filer ein wenig komplexer, aber nicht mit Java-Sicherheits-Upgrades auf Front-End-Hosts Schritt zu halten ist mühsamer, als mit dem Zerreißen von Protokollen auf dem zentralen Filer umzugehen.

+0

Danke, das macht Sinn. –

Verwandte Themen