Wir möchten über alle wichtigen Ereignisse in unseren Systemen Aufzeichnungen führen. Wenn beispielsweise in der Datenbank der aktuelle Benutzerstatus gespeichert wird, sollten im Ereignisprotokoll alle Änderungen dieses Status sowie die Zeitpunkte der Änderungen aufgezeichnet werden. Die Event-Logging-Funktion sollte für den Event-Werfer so nah wie möglich an Null sein, sollte strukturierten Informationen (im Gegensatz zu Textprotokoll-Nachrichten) Rechnung tragen und verteilte Deployment unterstützen (viele Felder werfen viele Ereignisse).Minimale Aufwand verteilte Event Logging-Bibliothek/Framework?
In einem früheren Leben hatten wir ein UDP-basiertes System, das gut funktionierte, weil wir eine große Kontrolle über das System hatten (minimierter Paketverlust). Die geraden Werfer würden UDP-Pakete abfeuern, die auf anderen Boxen aufgefangen und aufgezeichnet würden. Ich suche nach etwas ähnlichem, hoffentlich Open Source, von der Stange, und in allgemeineren Netzwerken einsetzbar. Alternativ bin ich offen für Vorschläge, wie man so etwas baut.
Dies sollte in mehreren Sprachen funktionieren, wird aber in erster Linie für Java und Python bestimmt sein. Die paritisierenden (Event-Throwing-) Anwendungen werden variieren; Einige werden Web-Apps sein, andere Batch-orientierte Apps. Die Ergebnisse werden wahrscheinlich in Hadoop/HDFS/HBase vorliegen.
Überprüfen Sie dies: http://logstash.net/docs/1.3.3/tutorials/getting-start-centralized – hB0