IIS-Probleme debuggen mithilfe einer Ablaufverfolgung
Stösst man unter Windows auf Probleme ist man ohne passendes Werkzeug oft aufgeschmissen. Für IIS gibt es eine Rolle namens Ablaufverfolgung (engl. Failed Request Tracing). Damit können Fehler, welche die Anforderung einer Website oder Datei verhindern oder verlangsamen in einem XML-File festgehalten werden.
Feature installieren
Über den Assistenten zum Hinzufügen von Rollen und Features kann das Feature Ablaufverfolgung installiert werden.
Webserver (IIS) -> Webserver -> Systemzustand und Diagnose -> Ablaufverfolgung
Ablaufverfolgung für einzelnes IIS-Web aktivieren
Hat man im IIS das entsprechende Web ausgewählt, kann Rechts bei den Aktionen die Ablaufverfolgung für Anforderungsfehler gestartet werden.
Per Doppelklick öffnet man nun Ablaufverfolgungsregeln für Anforderungsfehler. Rechts bei den Aktionen kann nun über den Link Hinzufügen eine neue Regel definiert werden.
In dieser Regel können Einschränkungen festgelegt, damit nicht alle Aufrufe geloggt werden. Bspw. kann man das Logging auf einzelne Statuscodes, Dateien und Zeiträume einschränken.
Ab jetzt werden die Logs geschrieben, sobald die betroffene Seite aufgerufen wurde.
Logs auswerten
In der Ablaufverflogung für Anforderungsfehler, rechts unter Aktionen können nun die Ablaufverfolgungsprotokolle über einen Link geöffnet werden.
In den Beispiel-Screenshots ist nun ersichtlich, dass der Statuscode zwar 200 (alles in Ordnung) ist, der Seitenaufbau aber tatsächlich um 10 Sekunden verzögert wird. Über die Request Details kann nun das Modul ausfindig gemacht werden, welches diesen Delay verursacht.
Mit diesen sehr detaillierten Informationen zum Seitenaufruf, können die möglichen Ursachen für ein Problem stark eingeschränkt werden. Viel Spass beim debuggen! 😉