Ich bin ziemlich beeindruckt von Splunk , insbesondere von Version 4. Hübsche Grafiken, Warnmeldungen (nur für Unternehmen) und schnelle, genaue Suche. Es ist ein großartiges Produkt.
Die Kosten sind jedoch viel zu hoch, als dass wir sie für die volle Produktionsauslastung unseres Unternehmens in Betracht ziehen könnten. Alles, was wir wirklich brauchen, ist die Möglichkeit, verschiedene Protokolle an einer zentralen Stelle zu indizieren und eine vernünftige Suche durchzuführen. Warnungen basierend auf einer gespeicherten Suche sind ebenfalls sehr hilfreich. Wir gehen nicht wirklich darüber hinaus.
Tatsächlich bestand unsere größte Verwendung in der Bereitstellung neuer Anwendungen. Alles wird über log4net entweder im Ereignisprotokoll unter Windows oder in einer Textdatei unter Linux protokolliert. Splunk macht es ziemlich einfach, schnell nach diesen zu suchen, um sicherzustellen, dass alle Teile der App einwandfrei funktionieren - das hat uns viel Zeit gespart, verglichen mit der Suche nach einzelnen Protokollquellen.
Welche Alternativen gibt es auf diesem Markt? Ich habe das Gefühl, dass Splunks Preise so hoch sind, weil sie bei weitem das beste Produkt haben und es kennen. Wir möchten, dass der Server unter Windows läuft.
Ich bin offen für ein geteiltes Modell, das ein Produkt für allgemeine Protokolle (Erfassung über Syslog / Snare) und ein spezielles Produkt für unsere benutzerdefinierten Apps (wie Log4Net Dashboard ) verwendet.
Funktioniert die Verwendung eines einfachen Syslog-Servers wie Kiwi, der an SQL Server gesendet wird (möglicherweise mit aktiviertem Volltext)?
Ich hoffe, die Kosten sollten deutlich unter 5 USD liegen. (Und ja, ich weiß, wir sind billig. Wir sind ein Startup mit wenig Geld und BizSpark kümmert sich um alle unsere MS-Lizenzen.)
Bearbeiten: Ich sollte hinzufügen, wir haben etwa 10 physische Server, 20 VMs und ein paar Firewalls und Switches. 90% ist Windows.
Antworten:
Hinweis: Dies ist alles in Bezug auf Linux und freie Software , da dies das ist, was ich am häufigsten verwende, aber Sie sollten mit einem Syslog-Client unter Windows in Ordnung sein, um die Protokolle an einen Linux-Syslog-Server zu senden.
Protokollierung auf einem SQL-Server: Mit nur ~ 30 Rechnern sollten Sie mit so ziemlich jedem zentralen Syslog-ähnlichen System und einem SQL-Backend zurechtkommen. Ich benutze Syslog-ng und MySQL unter Linux für genau diese Sache.
Hübsche Frontends für Grafiken sind das Hauptproblem - Es scheint, dass es viele gehackte Frontends gibt, die Elemente aus den Protokollen holen und anzeigen, wie viele Treffer, Warnungen usw., aber ich habe nichts Integriertes und Sauberes gefunden. Zugegeben, das ist die Hauptsache, nach der Sie suchen ... (Wenn ich etwas Gutes finde, aktualisiere ich diesen Abschnitt!)
Warnung : Ich verwende SEC auf einem Linux-Server, um in den Protokollen nach schlechten Dingen zu suchen und mich über verschiedene Methoden zu warnen. Es ist unglaublich flexibel und nicht so klickig wie Splunk. Es gibt hier ein nettes Tutorial, das durch viele der möglichen Funktionen führt.
Ich benutze Nagios auch für Diagramme verschiedener Statistiken und einige Warnungen, die ich nicht aus den Protokollen bekomme (z. B. wenn die Dienste nicht verfügbar sind usw.). Dies kann leicht angepasst werden, um Diagramme von allem hinzuzufügen, was Sie möchten. Ich habe Diagramme von Elementen hinzugefügt, z. B. die Anzahl der Zugriffe auf einen http-Server, indem der Agent das Plug- in check_logfiles verwendet, um die Anzahl der Zugriffe in den Protokollen zu zählen (es speichert die Position, die er für jeden Prüfzeitraum erreicht).
Insgesamt hängt es davon ab, wie viel Zeit Sie für die Einrichtung benötigen. Es gibt viele Optionen, die Sie verwenden können, die jedoch nicht so integriert sind wie Splunk und die wahrscheinlich mehr Aufwand erfordern, um das zu tun, was Sie möchten. Die Nagios-Diagramme sind einfach einzurichten, geben jedoch keine historischen Daten von vor dem Hinzufügen des Diagramms an, wohingegen Sie mit Splunk (und vermutlich anderen Frontends) einen Blick auf die vergangenen Protokolle und Diagramme werfen können, die Sie gerade erst erstellt haben dachte daran, sie anzuschauen.
Beachten Sie auch, dass das SQL-Datenbankformat und die Indizierung einen enormen Einfluss auf die Geschwindigkeit von Abfragen haben, sodass Ihre Idee der Volltextindizierung die Suchgeschwindigkeit erheblich beschleunigt. Ich bin nicht sicher, ob MySQL oder PostgreSQL etwas Ähnliches tun werden.
Bearbeiten : MySQL führt eine Volltextindizierung durch, jedoch nur für MyISAM-Tabellen vor MySQL 5.6. In 5.6 wurde die Unterstützung für InnoDB hinzugefügt .
Edit : Postgresql kann natürlich Volltextsuche machen: http://www.postgresql.org/docs/9.0/static/textsearch.html
quelle
Mehr auf * nix als auf Windows ausgerichtet, aber Octopussy unterstützt Windows und scheint auf die gleiche Art und Weise wie Splunk zu zielen.
quelle
8pussy
dem Domainnamen bei der ArbeitIch bin gerade dabei, eine Reihe von Überwachungslösungen auszuprobieren - aber ich möchte hauptsächlich Fenster überwachen. Die meisten Systeme sind auf die SNMP-Überwachung ausgerichtet, die es ohne Agenten schafft, eine bemerkenswerte Menge an Informationen abzurufen.
Dies sind einige der Systeme, die ich bisher ausprobiert habe:
Nagios - Open Source. Ein Schwein zu konfigurieren, aber hoch bewertet und scheint sehr flexibel. Es scheint im Wesentlichen ein Counter-Rekorder zu sein, der keine Remote-Skriptausführung zulässt und daher nicht zur Behebung von Konfigurationsproblemen wie MS System Center oder Kaseya verwendet werden kann. Ohne Agent, aber praktisch ohne das auf jedem Client installierte NSclient-Tool.
Cacti - Hübsches und unkompliziertes Grafikwerkzeug, das auf dem Ziehen von snmp-Statistiken basiert. Agentenlos.
OpsView - Basiert auf Nagios, ist aber einfacher zu konfigurieren und hat ein besseres Frontend.
HypericHQ - Einfache Einrichtung und Ausführung unter Windows. Die Basisversion ist kostenlos und macht viel. Es gibt ein kommerzielles HypericHQ-Unternehmen. Der Agent muss auf jedem Client installiert sein.
Zabbix - Ein weiteres nettes Überwachungstool. Es ist einfacher zu bedienen als Nagios. Verfügt über einen Agenten, den Sie auf Windows- und Clientcomputern installieren können. Ich habe das bisher nur ein bisschen erforscht.
Zenoss - Open Source. Ich war sehr beeindruckt von der Professionalität von Zenoss. Es ist ein SNMP-basierter Monitor mit zahlreichen Erweiterungen, die die Überwachung von HP Proliants, Windows-Diensten, MS SQL-Servern und MySQL ermöglichen. Die Erweiterungen funktionieren alle über SNMP, sodass auf den Client-Computern nichts installiert werden muss. Ich habe noch nicht alles erforscht und es scheint viele Funktionen zu geben, die ich noch nicht ausgenutzt habe. Es basiert auf Zope. Sofern Sie nicht mit der Installation von Zope auf dem neuesten Stand sind, empfehle ich Ihnen, die vorbereitete VM herunterzuladen - es funktioniert wie ein Traum direkt nach dem Auspacken.
Im kommerziellen Bereich können Sie sich einige Tools ansehen:
Kaseya - kostet ungefähr 6.000 pro Jahr für 250 Knoten, wenn ich mich recht erinnere, ist aber ein hervorragendes Tool und hat eine sehr aktive Benutzergemeinschaft. Es richtet sich an den MSP-Markt und ermöglicht die Überwachung von Systemen mehrerer Unternehmen. Es kann problemlos intern verwendet werden.
GFI Hounddog - einfacher als Kaseya, aber momentan sehr günstig. Auf jeden Fall einen Blick wert.
Es gibt eine Reihe von Lösungen, die als MSP-Systeme verkauft werden, jedoch im Wesentlichen Monitore und Remote-Administratoren sind.
Ian
quelle
Für zentrales Syslogging mit vielen tollen Funktionen kann ich rsyslog nur genug empfehlen . Es handelt sich um einen Open-Source-Syslog-Server, der problemlos als Ersatz für das reguläre Syslogd fungieren kann, das Sie kennen und lieben. Es ist jetzt der Syslog-Daemon der Wahl für Ubuntu und ich denke, dass Red Hat & Fedora diesen Weg auch gehen könnte. Ich habe festgestellt, dass es viel einfacher ist, loszulegen und das zu tun, was Sie wollen, das Syslog-ng ist.
Derzeit haben wir in unserem Shop zwei zentrale rsyslog-Server (einer an jedem Standort), die Protokolle für Hunderte von Servern empfangen. Ich habe automatische E-Mail-Warnungen, wenn etwas in Syslog eine Warnung oder höher auslöst (mit einigen Optimierungen sind natürlich einige Apps ein bisschen alarmierend). Ich könnte wahrscheinlich noch ein bisschen schlauer sein, als wenn ich es dazu bringen würde, Sachen an Nagios oder ähnliches zu schicken, aber es deckt uns genug für unsere Bedürfnisse im Moment.
Dies alles geht auch in eine MySQL-Datenbank (es gibt auch Unterstützung für Oracle oder PostgresQL, wenn Sie so vorgehen).
Es gibt auch ein Web-Frontend und einen Windows-Agenten zum Senden von Eventlog-Protokollen an den rsyslog-Server. Das Web-Frontend ist offensichtlich nicht so schlau wie Splunk, aber es erledigt den Job für $ 0.
quelle
Schauen Sie sich http://www.codeplex.com/polymon an
Es ist Open Source, verwendet SQL Server im Backend und hat eine schicke Benutzeroberfläche
quelle
Ich stimme zu, dass Splunk großartig ist. Für kleine, vorwiegend Linux-Umgebungen möchten Sie sich vielleicht so etwas wie ein Epylog ansehen .
Wir haben es an einem der Orte benutzt, an denen ich gearbeitet habe, und es war großartig für das, was wir wollten.
Ich bin nicht sicher, wie gut es mit Windows-Syslog-Nachrichten umgehen kann, die an einen Linux-Syslog-Collector gesendet werden, kann aber einen Versuch wert sein.
quelle
Einfach auf meine Antwort verlinken, wo:
Splunk ist fantastisch teuer: Was sind die Alternativen?
Bearbeiten (neue Projekte):
Die LogStash- und Graylog2- Projekte sehen sehr interessant aus
Hier sind ein paar Videos: eins zwei .
quelle
So etwas wie GFI EventsManager könnte den Trick für etwa 4.000 US-Dollar machen.
quelle
Wenn Sie nach einem SysLog-Ersatz suchen, können Sie auch einen kommerziellen Syslog / Rsyslog-Ersatz in Betracht ziehen, z . B. LogLogic, http://loglogic.com . Wir (dort, wo ich arbeite) verfügen über ein umfassendes Appliance-Set für Protokollierung, Speicherung und Berichterstellung. Im Wesentlichen ist es die Fähigkeit, 100.000 Nachrichten pro Sekunde zu sammeln, zu bearbeiten und zu indizieren, so dass Suchvorgänge durchgeführt werden können.
quelle
Sie könnten versuchen, Logscape von Liquidlabs - sehr ähnlich zu Splunk, hat aber auch ein paar andere Funktionen .... http://www.liquidlabs-cloud.com/products/logscape.html
quelle
Ich habe das SQL-Backend-Ding bei einem früheren Job gemacht (es war übrigens MySQL), komplett mit Skripten, Drupal-Schnittstelle mit benutzerdefinierten PHP-Skripten, das funktioniert.
Ehrlich gesagt, es dauerte viel zu viele Mannstunden und war immer noch kein Splunk.
Derzeit teste ich stattdessen Splunk. Ja, es ist nicht kostenlos, aber wenn man das große Ganze betrachtet, könnte es tatsächlich billiger sein.
quelle
Haben Sie es mit php-syslog-ng versucht? http://code.google.com/p/php-syslog-ng/
quelle
Ich habe den Dupe-Thread gepostet: Splunk ist fantastisch teuer: Was sind die Alternativen?
xpolog und alle seriösen kommerziellen Lösungen sind BIG $ (selbst wenn sie weniger als Splunk sind, sind die meisten leicht 5-stellig!)
Sooooo, was wir endlich gemacht haben (Splunk war zu viel $):
1) Wir wollten eine einfache Syslog-zu-SQL-DB-Pipeline
2) Wir haben kiwi syslog ausprobiert. Das hat eine Woche lang hervorragend funktioniert, funktioniert nicht mehr und der Kiwi-Support konnte es nicht beheben. Also ließen wir Kiwi fallen
3) Wir haben winsyslog ausprobiert. Ein alter Hund einer App, wir wollten es nicht lernen.
4) Wir haben diese kostenlose .net-App verwendet: http://www.aonaware.com/syslog.htm
Voila. Wir haben Syslog-Nachrichten in unserer Datenbank.
Wir sind sehr glücklich. $ 0 ausgegeben, einige Stunden, aber nicht zu viel.
quelle
Wir verwenden Splunk hier und ich bin schockiert über die Preise, die sie Ihnen mitgeteilt haben. Die grundlegende Aufschlüsselung, die wir erhalten haben, ergab einen Wert von ungefähr 1.000 US-Dollar pro 1 GB Daten. Es ist teuer, aber sehr leistungsfähig und sehr schnell zu entwickeln. Abhängig von Ihren Datenquellen und dem, was Sie damit tun möchten, können einige Python- und Perl-Skripte Ihnen viele ähnliche Daten liefern. Der große Unterschied wird die Zeit sein und das Erlernen der richtigen Umgangssprache für die Textverarbeitung. Sie könnten auch keine Echtzeit-IP-Informationen abrufen (z. B. Syslog). Sie können dies jedoch beheben, indem Sie einen Syslogger abrufen und die Informationen in eine Textdatei ausgeben. Entschuldigung, ich kann Sie nicht auf eine bestimmte Lösung hinweisen. Wofür wir Splunk nicht verwenden können, verwenden wir Python-, Perl- und Bash-Skripte.
quelle
ELSA - Enterprise Log Search und Archivierung
Haupteigenschaften:
Leistungsdetails:
Um ein System zu spezifizieren, in der Reihenfolge der Wichtigkeit: Festplattengröße, RAM, Festplattengeschwindigkeit, Anzahl der CPUs. Der übergeordnete Leistungsfaktor ist der Indexer und der Suchdämon von Sphinx. Weitere Informationen finden Sie unter sphinxsearch.com. Meine angegebenen Statistiken stammen von großen Systemen (16 CPU, 144 GB RAM, 12 TB HD), aber Sie erhalten die gleiche Leistung auf einem System mit 4 CPU, 8 GB RAM und beliebig großer HD, wenn die Dinge linear skalieren. Das System lief zuerst auf IBM Blades mit 4 GB RAM und langsamen SAN-Laufwerken und lief ungefähr mit der gleichen Geschwindigkeit, aber 4 GB reduzieren es ein wenig.
Liste der Leistungsdetails und Hauptfunktionen sowie eine Beschreibung der Architektur: http://ossectools.blogspot.com/2011/03/fighting-apt-with-open-source-software.html
Code: https://code.google.com/p/enterprise-log-search-and-archive/
VM: http://ossectools.blogspot.com/2011/07/elsa-vmware-appliance-available.html
Details zum Projekt: http://ossectools.blogspot.com/2011/03/comprehensive-log-collection.html
quelle
Wenn Sie nach einer viel günstigeren Alternative zu Splunk suchen, versuchen Sie es mit LogZilla ( http://www.logzilla.pro ). Es skaliert genauso gut oder besser als Splunk (Sie können über 300 Meter lange Stämme in 1-2 Sekunden durchsuchen) und kostet ganz einfach 1/10 der Kosten. Sie haben eine Demo unter http://demo.logzilla.pro
quelle