Webformular-Tracking mit ASP.NET

Microsoft Internet Information Services (IIS) können alle Anfragen für eine Website in einer Log-Datei aufzeichnen. Wie sich diese auswerten lassen, erklärt ZDNet.

Die mit IIS aufgezeichneten Log-Dateien können eine vielfältige Verwendung finden, z. B. zur Analyse von Sicherheit, Performance und Serverlast durch Systemadministratoren oder zur Analyse des Surfverhaltens der Besucher durch die Marketing-Abteilung. Allerdings erfordert die Aufbereitung dieser Log-Informationen für Web-Kunden einigen Aufwand von Seiten des Entwicklers. Kürzlich wollte ein Kunde, dass die Besucher seiner Website die Benutzerstatistik in Echtzeit angezeigt bekommen. Unsere Lösung bestand aus einem Code, mit dem jedes ASP.NET-Webformular jede Anfrage in einer Datenbank loggt. Hier die Gründe für diese Entscheidung und die Details der Lösung.

Einrichten der Logging-Funktion

Bei der Konfiguration von IIS kann man festlegen, welche Informationen geloggt werden sollen. Je mehr Daten man aufzeichnet, desto mehr Speicherplatz wird natürlich auf der Festplatte belegt, weshalb man nur solche Daten aufzeichnen sollte, die man später auch verwendet.
Die Tabelle auf Seite 2 ist eine vollständige Übersicht über alle Daten, die man loggen kann (ein Auszug aus der Microsoft IIS Dokumentation). Wie man sieht, gibt es eine schwindelerregende Menge an Daten, die jede Server-Transaktion erzeugen kann, aber das meiste ist nur von geringem Nutzen (und oft auch unverständlich) für die Endbenutzer. Üblicherweise wird ein Nichttechniker nur Datum, Uhrzeit, Dateigröße, Anmeldenamen und evtl. noch die IP-Adresse oder den Referrer wissen wollen oder müssen.

Feld Erscheint als Beschreibung
Date Date Das Datum, an dem die Aktivität stattfand.
Time Time Die Uhrzeit, zu der die Aktivität stattfand.
Client IP Address c-ip Die IP-Adresse des Clients, der auf den Server zugegriffen hat.
User Name cs-username Der Name des angemeldeten Benutzers, der auf den Server zugegriffen hat. Hierzu zählen keine anonymen Benutzer, die durch einen Bindestrich (-) dargestellt werden.
Service Name s-sitename Der Internet-Service und die Instanznummer, auf die von einem Client zugegriffen wurde.
Server Name s-computername Der Name des Servers, auf dem der Log-Eintrag erzeugt wurde.
Server IP Address s-ip Die IP-Adresse des Servers, auf dem der Log-Eintrag erzeugt wurde.
Server Port s-port Die Port-Nummer, mit dem der Client verbunden ist.
Method cs-method Die Aktion, die der Client auszuführen versucht hat (z. B. eine GET-Methode).
URI Stem cs-uri-stem Die Ressource, auf die zugegriffen wurde (z. B. Default.asp).
URI Query cs-uri-query Die Query, die ein Client auszuführen versucht hat (falls vorhanden).
Protocol Status sc-status Der Status der Aktion in HTTP- oder FTP-Begriffen.
Win32 Status sc-win32-status Der Status der Aktion in Microsoft Windows-Begriffen.
Bytes Sent sc-bytes Die Anzahl der vom Server verschickten Bytes.
Bytes Received cs-bytes Die Anzahl der vom Sender empfangenen Bytes.
Time Taken time-taken Die Zeitspanne (in Millisekunden), die die Aktion gedauert hat.
Protocol Version cs-version Die vom Client verwendete Protokoll-Version (HTTP, FTP). Für HTTP ist dies entweder HTTP 1.0 oder HTTP 1.1.
Host cs-host Zeigt den Inhalt des Host-Headers an.
User Agent cs(User-Agent) Der vom Client verwendete Browser.
Cookie cs(Cookie) Der Inhalt eines ggf. gesendeten oder empfangenen Cookies.
Referrer cs(Referer) Die vorherige vom Benutzer besuchte Webseite. Diese Seite enthielt einen Link auf die aktuelle Seite.

Themenseiten: Anwendungsentwicklung, Software, Webentwicklung

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Webformular-Tracking mit ASP.NET

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *