Freigeben über


Verwenden von Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen zur Problembehandlung bei Anwendungsanforderungsrouting

Gilt für: Internetinformationsdienste 7.0 und höhere Versionen

Fehleranforderungsablaufverfolgung ist ein leistungsstarkes Tool zur Problembehandlung von Anforderungsverarbeitungsfehlern in IIS 7.0 und höheren Versionen. Dieser Artikel enthält Schritte zum Aktivieren der Regeln für die Fehleranforderungsablaufverfolgung zum Debuggen von Fehlern und Ablaufverfolgungsschritten in Anwendungsanforderungsrouting. Weitere Informationen zu Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen finden Sie unter Problembehandlung bei fehlgeschlagenen Anforderungen mithilfe der Ablaufverfolgung in IIS 8.5.

Ziel

So konfigurieren Sie Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen und verstehen, wonach Sie bei der Problembehandlung beim Anwendungsanforderungsrouting suchen müssen.

Voraussetzungen

Diese Komplettlösung setzt die folgenden Voraussetzungen voraus:

  • IIS 7.0 oder höher unter Windows 2008 (jede SKU) oder neuer mit installiertem Ablaufverfolgungsrollendienst für IIS.
  • Microsoft Application Request Routing und abhängige Module.
  • Mindestens zwei Anwendungsserver mit funktionierenden Websites und Anwendungen.

Wenn das Anwendungsanforderungsrouting nicht installiert wurde, laden Sie es aus dem Download Center herunter, und installieren Sie es, indem Sie die in "Anwendungsanforderungsrouting installieren" beschriebenen Schritte ausführen.

Eine weitere Voraussetzung ist die Verwendung des Anwendungsanforderungsroutingmoduls und die Konfiguration des Anwendungsanforderungsroutings. Anwendungsanforderungsrouting sollte sich in der Arbeitsreihenfolge befinden, 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 mithilfe der Benutzeroberfläche oder mithilfe der Befehlszeile.

Konfigurieren von Regeln für die Fehleranforderungsablaufverfolgung mithilfe der Benutzeroberfläche

  1. Starten Sie Internetinformationsdienste (IIS)-Manager (inetmgr).
  2. Klicken Sie auf Standardwebsite.
    Screenshot der erweiterten Liste
  3. Im Bereich Aktionen wählen Sie unter Konfigurieren die Option Verfolgung fehlgeschlagener Anforderungen.
    Screenshot mit Fokus auf fehlerbezogene Anforderungsablaufverfolgung im Bereich
  4. Aktivieren Sie im Dialogfeld "Einstellungen für die Anforderungsablaufverfolgung der Website bearbeiten" das Kontrollkästchen "Aktivieren ".
    Screenshot des Dialogfelds
  5. Wählen Sie OK aus, um die Änderungen zu speichern.
  6. Klicken Sie auf Standardwebsite.
  7. Doppelklicken Sie auf Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen.
  8. Wählen Sie im Bereich "Aktionen" die Option "Hinzufügen..." aus.
    Screenshot des Fensters
    Wählen Sie "Alle Inhalte" (*), und wählen Sie dann "Weiter" aus.
  9. Wählen Sie Statuscode(n) aus, und geben Sie "200-399" ein.
    Screenshot der Regel
    Wählen Sie Weiter aus. Die oben genannte Konfiguration hat eine Regel für die Fehleranforderungsablaufverfolgung erstellt, die Ablaufverfolgungen schreibt, wenn der Statuscode zwischen 200 und 399 liegt.
  10. Deaktivieren sie ASP,ASPNET, und ISAPI-Erweiterung. Nachdem Sie WWW Serverausgewählt haben, deaktivieren Sie alles unter Bereiche:, mit Ausnahme von Neu schreiben und Anforderungsrouting. Da Anwendungsanforderungsrouting vom URL Rewrite Module zum Überprüfen eingehender Anforderungen verwendet wird, empfiehlt es sich, die Ablaufverfolgungen sowohl für das Anwendungsanforderungsrouting (RequestRouting) als auch für das URL Rewrite Module (Rewrite) zu aktivieren.
    Screenshot des Fensters
    Weitere Informationen zu URL Rewrite Module-Ablaufverfolgungen finden Sie unter Using Failed Request Tracing to Trace Rewrite Rules .
  11. Wählen Sie Fertig stellenaus.

So konfigurieren Sie Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen mithilfe der Befehlszeile

  1. Öffnen Sie eine Eingabeaufforderung mit Administratorrechten.

  2. Navigieren Sie zu %windir%\system32\inetsrv.

  3. Führen Sie den folgenden Befehl aus, um die Ablaufverfolgung fehlgeschlagener Anforderungen auf der Standardwebsite zu aktivieren:

    appcmd set site "Default Web Site" -traceFailedRequestsLogging.enabled:"true" /commit:apphost
    
  4. Führen Sie die folgenden Befehle aus, um die Regeln für die Fehleranforderungsablaufverfolgung wie in der benutzeroberfläche oben dargestellt 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 fehlgeschlagener Anforderungsablaufverfolgungsprotokolle

In diesem Schritt senden Sie Anforderungen an das Anwendungsanforderungsrouting und analysieren Fehlerprotokollierungsprotokollierungsprotokolle.

Um Protokolle zur Verfolgung fehlgeschlagener Anforderungen anzuzeigen

  1. Navigieren Sie zu dem Verzeichnis, in dem die Protokolle für die Verfolgung fehlgeschlagener Anforderungen geschrieben werden. Standardmäßig ist der Speicherort %SystemDrive%\inetpub\Logs\FailedReqLogFiles\.

  2. Ändern Sie das Verzeichnis in den Ordner, der der Standardwebsite entspricht. Standardmäßig ist es W3SVC1. Wenn Sie nicht sicher sind, wählen Sie die Standardwebsite im IIS-Manager und dann im Bereich "Aktionen" die Option "Erweiterte Einstellungen" aus. Der Wert der ID gibt den entsprechenden Ordner an. (Die ID 1 entspricht z. B. W3SVC1).

  3. Wenn XML-Dateien vorhanden sind, entfernen Sie sie, indem Sie Folgendes eingeben:

    del *.xml
    
  4. Senden Sie eine Anforderung an Anwendungsanforderungsrouting. Wenn das Anwendungsanforderungsrouting ordnungsgemäß funktioniert, führt es zu einer Antwort von 200, die innerhalb des Bereichs von 200 bis 399 liegt, der in Schritt 1 angegeben ist. Daher werden die Protokolle an der oben genannten Position geschrieben.

  5. Listet die Dateien im Verzeichnis auf, um zu bestätigen, dass neue XML-Dateien geschrieben wurden.

  6. Öffnen Sie die XML-Datei. Wählen Sie " Anforderungsdetails" aus. Wählen Sie "Vollständige Anforderungsablaufverfolgung" und dann "Alle erweitern" aus. Die folgende Abbildung ist ein Beispiel für ein Protokoll zur Ablaufverfolgung fehlgeschlagener Anforderungen für anwendungsanforderungsrouting:
    Screenshot eines Browserfensters mit der Anforderungsdiagnose für die Beispielwebsite auf einer Registerkarte.

  7. Schauen Sie sich die folgenden Abschnitte genauer an:

    • ALLGEMEINE_ANFORDERUNG_KOPFZEILEN:

      • Kopfzeilen: Zeigt den HTTP-Kopfzeilen an, den das Anwendungsanforderungsrouting empfangen hat.
    • ARR_ANFORDERUNG_ROUTIERT:

      • 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.
      • RoutingGrund: Gibt die Entscheidung an, warum der Server markiert wurde.
    • ARR_SERVER_STATISTIKEN:

      • Status: Verfügbarkeit des Zielservers.
      • TotalAnforderungen: Laufzeitstatistik, wie viele Anforderungen an diesen Server gesendet wurden.
      • AktuelleAnforderungen: Laufzeitstatistik über die gleichzeitige Anzahl von HTTP-Anforderungen an diesen Server.
      • BytesGesendet: Laufzeitstatistik, wie viele Daten in KB an diesen Server gesendet wurden.
      • BytesEmpfangt: Runtime-Statistik, wie viele Daten in KB von diesem Server empfangen wurden.
      • AntwortZeit: Runtime-Statistik für die Reaktionsfähigkeit in ms dieses Servers.
    • ALLGEMEINE_ANTWORT_KOPFZEILEN

      • Kopfzeilen: Zeigt den HTTP-Antwortkopfzeile vom Zielserver an.
    • ALLGEMEINER_ANTWORT_ENTITY_PUFFER

      • Puffer: Zeigt die Antwort-Entität vom Zielserver an.
    • Die folgenden Angaben wurden mit den Zeitstempeln hinzugefügt, um die Start- und Endzeiten der entsprechenden Ereignisse anzugeben, um die Leistung des Anwendungsanforderungsroutings zu profilieren:

      • ARR_ANFORDERUNG_KOPFZEILEN_BEGINN
      • ARR_ANFORDERUNG_KOPFZEILEN_ENDE
      • ARR_RESPONSE_HEADERS_START
      • ARR_ANTWORT_KOPFZEILEN_ENDE
      • ARR_ANTWORT_ENTITY_BEGINN
      • ARR_ANTWORT_ENTITY_ENDE
      • ARR_ANTWORT_ENTITY_BEGINN
      • ARR_ANTWORT_ENTITY_ENDE

Wenn Sie die Protokolle für die Fehleranforderungsablaufverfolgung auf dem Serverkern sammeln, kopieren Sie die Protokolle mit freb.xsl stylesheet auf einen Computer, auf dem ein Browser verfügbar ist.

Zusammenfassung

Sie haben jetzt die Regeln für die Ablaufverfolgung fehlgeschlagener Anforderungen für das Anwendungsanforderungsrouting erfolgreich konfiguriert. Fehler bei der Anforderungsablaufverfolgung können verwendet werden, um Anwendungsanforderungsrouting zu behandeln und zu debuggen sowie die Routingentscheidungen zu verstehen, einschließlich Algorithmen zum Lastenausgleich, die sie beim Auswählen des Zielservers für eine bestimmte Anforderung vorgenommen hat.