2011-01-11 5 views
1

Wir haben eine IIS .NET-Anwendung, die auf mehreren Computern bereitgestellt wird. Wir verwenden IIS-Protokollinformationen, um Berichte über die Leistung der Webanwendung und die Navigation durch den Benutzer zu erstellen. Derzeit werden die Berichte nur selten (einmal täglich für den vorherigen Tag) benötigt. Daher werden die Protokolle nur alle 24 Stunden gerollt und die alten Protokolle auf unseren Berichtsserver verschoben.Aggregation von IIS-Protokollen

Wir haben eine neue Anforderung, die bedeutet, dass wir eine viel schnellere Bearbeitung der IIS-Protokollinformationen benötigen, sagen wir jede Minute für die Diskussion.

Es gibt Apache-Tools wie Facebooks Scribe, um Apache-Webserver-Protokolle skalierbar über ein Netzwerk von Servern zu verschieben.

Gibt es ähnliche Tools für IIS?

Ist das die richtige Frage zu stellen?

Sollten wir etwas anderes machen, wenn sich die Timing-Anforderungen so sehr geändert haben?

Ich habe this question und die Antworten angeschaut, und die einzige, die in der Nähe zu kommen scheint, ist this one.

Zeiger geschätzt!

Antwort

1

Snare ist ein wenig alt, aber erwähnenswert.

Snare Agent für IIS Server

http://www.intersectalliance.com/projects/SnareIIS/index.html

benutzte ich diese alte Version vor langer Zeit und es hat gut funktioniert durch Forwarding/Senden/IIS-Protokolle über ein Netzwerk via syslog replizieren.

Heute haben sie eine neuere Version Snare Epilog

http://www.intersectalliance.com/projects/EpilogWindows/index.html

Der Code ist auch Open-Source genannt; vielleicht finden Sie es nützlich.

Sie könnten auch versuchen wollen ...

http://nxlog.org

http://www.syslogserver.com/syslogagent.html

+0

Brian, danke für den Zeiger! +1 –

+0

OK, das war lange genug offen. Ich werde deine Antwort als akzeptiert markieren, weil sie mir sicherlich eine andere Möglichkeit bietet. Vielen Dank! –

1

Ich neige dazu, eine BAT-Datei in Verbindung mit Log Parser 2.2 zu schreiben. Die .Bat-Datei wird die entsprechenden Dateidaten ermitteln und die entsprechenden Protokolle von mehreren IIS-Serverprotokollstandorten in ein einzelnes lokales Verzeichnis abrufen. Sobald die Dateien übergreifend sind, führe ich einen Log-Parser-Befehl aus, um den Log-Inhalt über alle Log-Dateien abzufragen und dann eine einzelne Ausgabedatei im .csv-Format zu erzeugen. Schließlich führe ich einen SSIS-Job aus, um die neue .csv-Datei in eine laufende Log-Tabelle zu importieren, die ich dann laufend abfragen kann.

+0

Danke für die Info! –

+0

@Peter, hier ist ein guter Grund auf das Log-Parser-Tool von MS. Denken Sie daran, dass alle angezeigten Befehle direkt über die Befehlszeile ausgeführt werden können.Bat-Datei, wenn Sie die Ausgänge automatisieren möchten. http://www.codinghorror.com/blog/2005/08/microsoft-logparser.html –

+0

Ja, wir verwenden den Log-Parser als Teil unserer Verarbeitung. Ihr Beitrag hat (für mich) vorgeschlagen, dass wir uns darauf konzentrieren sollten, * diesen * Teil der Verarbeitung zu verteilen, anstatt die Log-Dateien zu versenden. :-) –