Logstash und Graylog sind sich sehr ähnlich. Beide dienen dazu, Protokolldaten über das Netzwerk zu erfassen und in ElasticSearch zu speichern, wo sie später von einer Webschnittstelle abgerufen werden können. Graylog2 ist so konzipiert, dass die Standardeinstellungen für die meisten Benutzer sofort einsatzbereit sind, während Logstash hochgradig programmierbar ist und die neueste Nebenversion (1.2) eine einigermaßen nützliche Konfigurationssprache mit vollständiger Unterstützung für Bedingungen enthält, wie dies bei nxlog der Fall ist auf der Client-Seite.
In Bezug auf die Webschnittstellen verwendet Logstash in der Regel Kibana, während Graylog2 über eine eigene Webschnittstelle verfügt. Meine Empfehlung ist, beides auszuprobieren und zu sehen, was Ihnen besser gefällt. Graylog2 muss weniger gebastelt werden, aber Kibana ist absurderweise leistungsfähiger, was Sie mit benutzerdefinierten Berichts-Dashboards tun können.
Die Ereignisprotokolleingabe soll lokal von einem Logstash-Agenten ausgeführt werden, der auf dem Windows-Host installiert ist, auf dem Sie Protokolle erfassen möchten. Da der Logstash-Agent in Java geschrieben ist und die JVM eine große Menge an Arbeitsspeicher binden kann, möchten Sie ihn wahrscheinlich nicht hängen lassen, es sei denn, Sie haben einen Stapel Arbeitsspeicher auf Ihren Systemen. nxlog ist viel schlanker und leistet hervorragende Arbeit beim Abrufen von Windows-Ereignisprotokolldaten und beim Weiterleiten an Logstash mithilfe von JSON oder GELF. Die Konfigurationssyntax ist außerdem wesentlich robuster und umfangreicher als die von Logstash. Daher können Sie möglicherweise komplexe Aufgaben mit Ihren Ereignisprotokollen erledigen, bevor Sie sie weiterleiten, z.
Logstash verfügt über einen CSV-Filter. Sie können also am besten Rohprotokolldaten über einen TCP- oder UDP-Socket an den Logstash-Server senden und die Daten ermitteln. nxlog hat möglicherweise Funktionen, um etwas Ähnliches zu tun, aber ich habe nie danach gesucht.