Ich versuche herauszufinden, wie andere Leute ihre Protokollverwaltungssysteme implementieren.
Ich habe 20-30 Linux-Server und ein paar Windows-Boxen (die meisten sind virtualisiert). Wir verwenden viele Perl- und Bash-Skripte, um die meisten unserer automatisierten Jobs auszuführen, und ich versuche, deren Protokollierung zu standardisieren.
Ich habe mich mit log4perl und log4sh befasst, um Skripte und Syslog-ng zu protokollieren und alle Protokolle auf einem zentralen Protokollierungsserver abzurufen. Ich habe auch über Splunk nachgelesen, obwohl es so klingt, als ob die Enterprise Edition ziemlich teuer ist und ich mit all meinen Servern möglicherweise über das freie Lizenzlimit hinausgehe.
Ich habe andere Tools wie Swatch und Logcheck gesehen, bin mir aber nicht ganz sicher, wie all diese Teile zusammenpassen ... Über Empfehlungen würde ich mich sehr freuen!
Antworten:
Ich habe ungefähr 30 Server und verwende einfach syslog, um alle Protokolle an einen einzigen Protokollierungsserver zu senden. Für die Sicherung sind alle Computer außerdem so konfiguriert, dass sie ihre eigenen Protokolle einige Tage lokal speichern. Mithilfe von logrotate können Sie die Rotation und das Löschen alter Protokolle erledigen.
Jeder meiner Anwendungsserver führt ein kleines Perl-Skript aus, um seine Protokolle an syslog zu senden, das sie dann an den loghost weiterleitet (Perl-Skript unten).
Dann haben wir auf dem loghost einige benutzerdefinierte Skripte, die logcheck ähneln und die eingehenden Protokolle grundsätzlich auf verdächtige Ereignisse überwachen.
Wir haben auch alle E-Mails von jedem Host an einem Ort, sodass wir alle Nachrichten erhalten, wenn sich ein Programm auf diese Weise beschwert. Dies könnte theoretisch zu einer einzelnen Mailbox gehen, auf die ein Programm reagieren und die es analysieren könnte.
Hier ist mein Logging Perl Skript. Es funktioniert, indem es die Ausgabe des Programms in das Programm leitet, die Ausgabe dann sysloggt und wieder ausspuckt, damit Sie sie an einen anderen Ort senden können (ich sende sie an Multilog). Sie können ihm auch die Option -q geben, um einfach zu syslog zu wechseln.
quelle
Obwohl ich es noch nicht implementiert habe, plane ich, alle meine Maschinen, die Protokolle generieren, auf rsyslog zu verlagern und einen Server vom Typ Bastion zu implementieren, der als Kollektor für Syslogs fungiert. Von dort aus kann die kostenlose Version von Splunk alles, was ich brauche, um Informationen abzurufen.
Jetzt nur um es umzusetzen ...
quelle
Ich benutze einen zentralen Syslog-Host. Jedes Edgesystem sendet * .debug an den zentralen Loghost. Der zentrale Syslog-Host führt syslog-ng aus und verfügt über Regeln zum Teilen von Protokollen, sodass jeder Computer seine eigenen Dateien generiert, die für diesen Tag benannt sind. Es speichert außerdem alles in einer einzelnen Datei, für die ich einen Nachkommen von logcheck.sh ausführe.
Einmal am Tag führe ich einen Log-Compacter aus, der alle Logs, die älter als 7 Tage sind, komprimiert und alle Logs löscht, die älter als 28 Tage sind. Zwischen den beiden gibt es Protokollen eine erwartete Lebensdauer von 35 Tagen auf dem Server, was bedeutet, dass alle Protokolle in monatlichen Backups gespeichert werden sollten, wo sie für bis zu zwei Jahre wiederhergestellt werden können.
Es ist speicherintensiv, scheint jedoch der beste Weg zu sein, die Abdeckung sicherzustellen.
quelle
Für die zentrale Protokollierung würde ich LogZilla sehr empfehlen . Wir benutzen es seit über einem Jahr und lieben es absolut. Die Benutzeroberfläche ist sehr einfach zu erlernen und zu verwenden. Die Installation dauerte ungefähr eine Stunde.
Selbst wenn Sie dies nicht tun, sollten Sie wirklich versuchen, sich von der skriptbasierten Überwachung zu lösen, da Sie genau diese erhalten ... Überwachung. Was Sie versuchen sollten, ist Management. Durch das Reparieren von Problemen mit Top-Talkern usw. wird die Anzahl der durch die Skript-Überwachung ausgelösten "Brände" erheblich reduziert. Hier ist ein sehr guter Artikel zum Syslog-Management:
http://www.cisco.com/en/US/technologies/collateral/tk869/tk769/white_paper_c11-557812.html
quelle
Wir verwenden eine Appliance von LogLogic für unsere Enterprise-Protokollierung. Es basiert auf Syslog, sodass alle * nix-Boxen problemlos damit umgehen können. Es gibt eine kleine App, die auf Windows-Servern installiert werden muss. Ich kann nach allem suchen, was ich will, einschließlich REGEX-Abfragen, und es scheint in der Lage zu sein, einiges an Last zu bewältigen (allein unser Active Directory-Setup erzeugt eine unglaubliche Menge an Datenverkehr).
quelle
Für den zentralen Protokollierungsserver können Sie sich mein Octopussy- Projekt ansehen .
Am Anfang ist es eine Menge Arbeit, aber nachdem Sie eine Menge Dinge mit diesen Protokollen machen können!
quelle
Hier ist ein Tutorial, das ich geschrieben habe und das alle Aspekte der zentralen Protokollierung und Analyse abdeckt.
Link: http://crunchtools.com/centralizing-log-files/
quelle