Verwenden von Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen zum Behandeln von Problemen beim Routing von Anwendungsanforderungen
Gilt für: Internetinformationsdienste 7.0 und höhere Versionen
Die Ablaufverfolgung fehlgeschlagener Anforderungen ist ein leistungsfähiges Tool zur Problembehandlung von Anforderungsverarbeitungsfehlern in IIS 7.0 und höheren Versionen. Dieser Artikel enthält Schritte zum Aktivieren von Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen zum Debuggen von Fehlern und Ablaufverfolgungsschritten in Anwendungsanforderungsrouting. Weitere Informationen zu Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen finden Sie unter Problembehandlung bei anforderungensfehlern mithilfe der Ablaufverfolgung in IIS 8.5.
Ziel
So konfigurieren Sie Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen und verstehen, worauf Sie bei der Problembehandlung beim Routing von Anwendungsanforderungen achten müssen.
Voraussetzungen
Für diese exemplarische Vorgehensweise sind die folgenden Voraussetzungen erforderlich:
- IIS 7.0 oder höher unter Windows 2008 (beliebige SKU) oder höher, wobei der Rollendienst "Ablaufverfolgung" für IIS installiert ist.
- Microsoft Application Request Routing und abhängige Module.
- Mindestens zwei Anwendungsserver mit Arbeitsstandorten und Anwendungen.
Wenn das Anwendungsanforderungsrouting noch nicht installiert wurde, laden Sie es aus dem Download Center herunter, und installieren Sie es, indem Sie die unter Installieren des Anwendungsanforderungsroutings beschriebenen Schritte ausführen.
Eine weitere Voraussetzung ist, dass Sie die Verwendung des Anwendungsanforderungsroutingmoduls durchlaufen und das Anwendungsanforderungsrouting konfiguriert haben. Das Routing von Anwendungsanforderungen sollte in funktionierender Reihenfolge ausgeführt werden, bevor Sie mit den folgenden Abschnitten fortfahren.
Schritt 1: Konfigurieren von Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen
Konfigurieren Sie die Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen für das Anwendungsanforderungsrouting über die Benutzeroberfläche oder über die Befehlszeile.
Konfigurieren von Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen mithilfe der Benutzeroberfläche
- Starten Sie den Internetinformationsdienste-Manager (IIS) (inetmgr).
- Wählen Sie Standardwebsite aus.
- Wählen Sie im Bereich Aktionen unter Konfigurieren die Option Ablaufverfolgung fehlgeschlagener Anforderungen... aus.
- Aktivieren Sie im Dialogfeld Einstellungen für die Ablaufverfolgung von Anforderungsfehlern für Website bearbeiten das Kontrollkästchen Aktivieren .
- Wählen Sie OK aus, um die Änderungen zu speichern.
- Wählen Sie Standardwebsite aus.
- Doppelklicken Sie auf Ablaufverfolgungsregeln für fehlgeschlagene Anforderungen.
- Wählen Sie im Bereich Aktionen die Option Hinzufügen... aus.
Wählen Sie Alle Inhalte (*) und dann Weiter aus. - Wählen Sie Statuscode(s) aus, und geben Sie 200-399 ein.
Wählen Sie Weiter aus. Die obige Konfiguration hat eine Regel zur Ablaufverfolgung fehlgeschlagener Anforderungen erstellt, die Ablaufverfolgungen schreibt, wenn der status Code zwischen 200 und 399 liegt. - Deaktivieren Sie ASP, ASPNET und ISAPI-Erweiterung. Nachdem Sie WWW-Server ausgewählt haben, deaktivieren Sie alles unter Bereiche: mit Ausnahme von Rewrite und RequestRouting. Da das Anwendungsanforderungsrouting auf dem URL-Rewrite-Modul basiert, um eingehende Anforderungen zu untersuchen, wird empfohlen, die Ablaufverfolgungen sowohl für das Anwendungsanforderungsrouting (RequestRouting) als auch für das URL-Rewrite-Modul (Rewrite Module) zu aktivieren.
Weitere Informationen zu Ablaufverfolgungen des URL-Rewrite-Moduls finden Sie unter Using Failed Request Tracing to Trace Rewrite Rules . - Wählen Sie Fertig stellen aus.
Konfigurieren von Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen mithilfe der Befehlszeile
Öffnen Sie eine Eingabeaufforderung mit Administratorrechten.
Navigieren Sie zu
%windir%\system32\inetsrv
.Führen Sie den folgenden Befehl aus, um die Ablaufverfolgung für fehlgeschlagene Anforderungen auf der Standardwebsite zu aktivieren:
appcmd set site "Default Web Site" -traceFailedRequestsLogging.enabled:"true" /commit:apphost
Führen Sie die folgenden Befehle aus, um die Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen wie auf der benutzeroberfläche oben gezeigt zu konfigurieren:
appcmd.exe set config "Default Web Site" -section:system.webServer/tracing/traceFailedRequests /+"[path='*']"
appcmd.exe set config "Default Web Site" -section:system.webServer/tracing/traceFailedRequests /+"[path='*'].traceAreas.[provider='WWW Server',areas='Rewrite,RequestRouting',verbosity='Verbose']"
appcmd.exe set config "Default Web Site" -section:system.webServer/tracing/traceFailedRequests /[path='*'].failureDefinitions.statusCodes:"200-399"
Schritt 2: Analysieren von Ablaufverfolgungsprotokollen für fehlgeschlagene Anforderungen
In diesem Schritt senden Sie Anforderungen an das Routing von Anwendungsanforderungen und analysieren Protokolle zur Ablaufverfolgung fehlgeschlagener Anforderungen.
So zeigen Sie Protokolle zur Ablaufverfolgung fehlgeschlagener Anforderungen an
Navigieren Sie zu dem Verzeichnis, in das die Protokolle zur Ablaufverfolgung fehlgeschlagener Anforderungen geschrieben werden. Standardmäßig ist
%SystemDrive%\inetpub\Logs\FailedReqLogFiles\
der Speicherort .Ändern Sie das Verzeichnis in den Ordner, der der Standardwebsite entspricht. Standardmäßig ist dies W3SVC1. Wenn Sie sich nicht sicher sind, wählen Sie im IIS-Manager die Standardwebsite und dann im Bereich Aktionen die Option Erweiterte Einstellungen... aus. Der Wert der ID gibt den entsprechenden Ordner an. (Id 1 entspricht z. B. W3SVC1).
Wenn XML-Dateien vorhanden sind, entfernen Sie sie, indem Sie Folgendes eingeben:
del *.xml
Senden Sie eine Anforderung an anwendungsanforderungsrouting. Wenn das Anwendungsanforderungsrouting ordnungsgemäß funktioniert, führt dies zu einer 200-Antwort, die innerhalb des in Schritt 1 angegebenen Bereichs von 200 bis 399 liegt. Daher werden die Protokolle an den oben genannten Speicherort geschrieben.
Listen Sie die Dateien im Verzeichnis auf, um zu bestätigen, dass neue XML-Dateien geschrieben wurden.
Öffnen Sie die XML-Datei. Wählen Sie Details anfordern aus. Wählen Sie Anforderungsablaufverfolgung abschließen und dann Alle erweitern aus. Die folgende Abbildung zeigt ein Beispiel für ein Protokoll zur Ablaufverfolgung fehlgeschlagener Anforderungen für das Routing von Anwendungsanforderungen:
Achten Sie genauer auf die folgenden Abschnitte:
GENERAL_REQUEST_HEADERS:
- Header: Zeigt den HTTP-Header an, den das Anwendungsanforderungsrouting empfangen hat.
ARR_REQUEST_ROUTED:
- WebFarm: Gibt den Namen der Servergruppe an, in der die Anforderung weitergeleitet wird.
- Server: Gibt den Zielserver an, auf dem die Anforderung weitergeleitet wird.
- Algorithmus: Gibt an, welcher Lastenausgleichsalgorithmus verwendet wird.
- RoutingReason: Gibt die Entscheidung an, warum der Server ausgewählt wird.
ARR_SERVER_STATS:
- Status: Verfügbarkeit des Zielservers.
- TotalRequests: Laufzeitstatistik, wie viele Anforderungen an diesen Server gesendet wurden.
- CurrentRequests: Laufzeitstatistik zur gleichzeitigen Anzahl von HTTP-Anforderungen an diesen Server.
- BytesSent: Laufzeitstatistik, wie viele Daten in KB an diesen Server gesendet wurden.
- BytesReceived: Laufzeitstatistik, wie viele Daten in KB von diesem Server empfangen wurden.
- ResponseTime: Laufzeitstatistik zur Reaktionsfähigkeit in ms dieses Servers.
GENERAL_RESPONSE_HEADERS
- Header: Zeigt den HTTP-Antwortheader vom Zielserver an.
GENERAL_RESPONSE_ENTITY_BUFFER
- Puffer: Zeigt die Antwortentität des Zielservers an.
Die folgenden Wurden mit den Zeitstempeln hinzugefügt, um die Start- und Endzeiten der entsprechenden Ereignisse anzugeben, um ein Profil für die Leistung des Anwendungsanforderungsroutings zu erstellen:
- ARR_REQUEST_HEADERS_START
- ARR_REQUEST_HEADERS_END
- ARR_RESPONSE_HEADERS_START
- ARR_RESPONSE_HEADERS_END
- ARR_RESPONSE_ENTITY_START
- ARR_RESPONSE_ENTITY_END
- ARR_RESPONSE_ENTITY_START
- ARR_RESPONSE_ENTITY_END
Wenn Sie die Protokolle zur Ablaufverfolgung fehlgeschlagener Anforderungen auf dem Serverkern erfassen, kopieren Sie die Protokolle mit dem Freb.xsl-Stylesheet auf einen Computer, auf dem ein Browser verfügbar ist.
Zusammenfassung
Sie haben nun erfolgreich Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen für das Routing von Anwendungsanforderungen konfiguriert. Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen können verwendet werden, um die Problembehandlung und das Debuggen des Anwendungsanforderungsroutings sowie die Routingentscheidungen zu verstehen, einschließlich Lastenausgleichsalgorithmen, die bei der Auswahl des Zielservers für eine bestimmte Anforderung getroffen wurden.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für