Webformular-Tracking mit ASP.NET

Obwohl der Gebrauch von IIS-Logs sehr zu empfehlen ist, kann es vorkommen, dass Entwickler keinen Zugriff auf sie haben. Dies kann passieren, wenn der Entwickler die Website auf einem externen Webserver hostet (Shared Hosting). Dies ist eine gängige Praxis, besonders für kleinere Websites. Ein einzelner IIS-Server kann mehrere Sites hosten.

Systemadministratoren geben Entwicklern normalerweise keinen Zugang zu Log-Dateien, und das ist auch richtig so, wie man leicht einsehen kann. Die Log-Dateien enthalten schließlich auch Logging-Informationen anderer Sites auf dem Server. Daher müssen die Log-Dateien gefiltert werden, bevor man die Informationen an einen Entwickler weitergeben kann. Dies stellt ein Problem dar, wenn der Entwickler Zugriff auf die Log-Dateien in Echtzeit benötigt.

Und es gibt noch einen weiteren Fall, in dem die IIS-Logs nicht direkt verfügbar sind. Hierbei ist die Konfiguration genau entgegengesetzt: Statt mehrere Sites auf einem Webserver zu hosten, ist auch eine Konfiguration denkbar, bei der eine Website auf mehreren Servern gehostet ist. Dieses Vorgehen ist als „Web-Farm“ bekannt und wird für Sites mit einem hohen Datenaufkommen verwendet. Bei diesem Szenario verfügt möglicherweise jeder IIS-Server über seine eigenen Log-Dateien. Um auf die Logging-Informationen zuzugreifen, müssen die einzelnen IIS-Logs zu einer Gesamt-Log-Datei zusammengefasst werden.

In beiden Situationen könnte es von Vorteil sein, die Anfragen in einer Datenbank zu loggen, da diese eine zeitnahe, zusammengefasste Ansicht der Daten bietet. So war es auch im Fall des Kunden, der den Besuchern seiner Website die Benutzungsstatistiken in Echtzeit bieten wollte. Um diese Anforderung erfüllen zu können, entwickelten wir einen generischen Code, mit dem jedes ASP.NET-Webformular jede Anfrage in einer Datenbank loggen konnte. Man muss nicht extra erwähnen, dass diese Lösung gewisse Performance-Einbußen mit sich bringt, da jede Seitenanfrage zu einem neuen Datenbankeintrag führt. Wir konnten den Code allerdings so weit wie möglich optimieren um die Performance-Nachteile möglichst gering zu halten. Außerdem ist anzumerken, dass das Loggen von Anfragen in einer Datenbank zu Duplikaten der Informationen führt, wenn IIS die Daten gleichzeitig auch in einer Datei loggt. Wenn man die IIS-Logs mit denen in der Datenbank vergleicht, sollte man auf sich überschneidende Aktivitäten achten und vor allem auf Unstimmigkeiten.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Vorinstallierte Schadsoftware auf IoT-Geräten

Mit dem Internet verbundene Digitale Bilderrahmen oder Mediaplayer können mit Schadsoftware infiziert werden und sind…

6 Tagen ago

iOS und iPadOS 18.2 beseitigen 21 Sicherheitslücken

Schädliche Apps können unter Umständen einen Systemabsturz auslösen. Mindestens eine Anfälligkeit erlaubt eine Remotecodeausführung.

7 Tagen ago

Top-Malware im November: Infostealer Formbook bleibt Nummer 1

Sein Anteil an allen Infektionen steigt in Deutschland auf 18,5 Prozent. Das Botnet Androxgh0st integriert…

7 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome

Betroffen sind Chrome 131 und früher für Windows, macOS und Linux. Angreifer können unter Umständen…

7 Tagen ago

Data Analytics: Dienstleister wachsen zweistellig

Marktforscher Lündendonk erwartet für das Jahr 2025 ein durchschnittliches Umsatzwachstum von 14,9 Prozent.

1 Woche ago

Open-Source-Malware auf Rekordniveau

Alarmierender Anstieg von Open-Source-Malware / Seit 2019 haben Sonatype-Analysen mehr als 778.500 bösartige Pakete aufgedeckt

1 Woche ago