Freigeben über


Verwenden gespeicherter IntelliTrace-Daten (C#, Visual Basic, C++)

Wechseln Sie zu bestimmten Punkten in der Ausführung Ihrer Anwendung, wenn Sie mit dem Debuggen aus einer IntelliTrace-Protokolldatei (.iTrace) beginnen. Diese Datei kann Leistungsereignisse, Ausnahmen, Threads, Testschritte, Module und andere Systeminformationen enthalten, die IntelliTrace während der Ausführung der App erfasst.

Vergewissern Sie sich, dass Sie über folgendes verfügen:

Was möchten Sie tun?

Öffnen eines IntelliTrace-Protokolls

Öffnen Sie auf einem Computer mit Visual Studio Enterprise die ITrace-Datei.

  • Doppelklicken Sie auf die ITrace-Datei außerhalb von Visual Studio, oder öffnen Sie die Datei in Visual Studio.

    – oder –

  • Wenn die .iTrace-Datei an ein Team Foundation Server-Arbeitselement angefügt ist, führen Sie die folgenden Schritte im Arbeitselement aus:

    • Suchen Sie unter "Alle Links" die ITrace-Datei. Öffnen Sie es.

      – oder –

    • Wählen Sie unter Repro Steps den IntelliTrace-Link aus.

Tipp

Wenn Sie die IntelliTrace-Datei beim Debuggen geschlossen haben, können Sie sie ganz einfach erneut öffnen. Wechseln Sie zum Menü "Debuggen ", wählen Sie "IntelliTrace" aus, "Protokollzusammenfassung anzeigen". Sie können auch im IntelliTrace-Fenster "Protokollzusammenfassung anzeigen" auswählen. Dies ist nur beim Debuggen mit IntelliTrace verfügbar.

Grundlegendes zum IntelliTrace-Protokoll

Einige der folgenden Abschnitte in der ITrace-Datei werden nur angezeigt, wenn Sie Daten aus einer bestimmten Quelle gesammelt haben, z. B. aus SharePoint-Anwendungen.

Abschnitt Enthält Sammlungsquelle
Leistungsverstöße Leistungsereignisse mit Funktionsaufrufen, die den konfigurierten Schwellenwert überschreiten Microsoft Monitoring Agent, entweder eigenständiger Sammler oder mit System Center 2012 R2 Operations Manager für ASP.NET Web-Apps, die in IIS gehostet werden
Ausnahmedaten Ausnahmen, einschließlich des vollständigen Aufrufstapels für jede Ausnahme Alle Quellen
Analyse Nur für SharePoint 2010- und SharePoint 2013-Anwendungen. Diagnostizieren Sie IntelliTrace- und SharePoint-Ereignisse, z. B. Debuggerereignisse, ULS-Ereignisse, unbehandelte Ausnahmen und andere Daten, die der Microsoft Monitoring Agent aufgezeichnet hat. Microsoft Monitoring Agent, entweder eigenständiger Sammler oder mit System Center 2012 R2 Operations Manager
Systeminformationen Einstellungen und Spezifikationen des Hostsystems Alle Quellen
Threadsliste Threads, die während der Sammlung ausgeführt wurden Alle Quellen
Modules Module, die der Zielprozess in der Reihenfolge geladen hat, in der sie geladen wurden. Alle Quellen
Webanforderung Webanforderungsdaten für IIS-Produktionswebanwendungen und SharePoint 2010 und SharePoint 2013 Microsoft Monitoring Agent und der eigenständige Sammler

Hier finden Sie einige Tipps, mit denen Sie Informationen in den einzelnen Abschnitten finden können:

  • Wählen Sie eine Spaltenüberschrift aus, um Daten zu sortieren.

  • Verwenden Sie das Suchfeld, um Daten zu filtern. Die Nur-Text-Suche funktioniert über alle Spalten mit Ausnahme der Zeitspalten. Sie können Suchvorgänge auch nach einer bestimmten Spalte mit einem Filter pro Spalte filtern. Geben Sie den Spaltennamen ohne Leerzeichen, einen Doppelpunkt (:) und den Suchwert ein. Folgen Sie diesem mit einem Semikolon (;), um eine weitere Spalte und einen Suchwert hinzuzufügen.

    Um z. B. Leistungsereignisse mit dem Wort "slow" in der Spalte "Beschreibung " zu finden, geben Sie Folgendes ein:

    Description:slow

Starten des Debuggens aus einem IntelliTrace-Protokoll

Leistungsverletzungen

Überprüfen Sie die Leistungsereignisse, die für Ihre App aufgezeichnet wurden. Sie können diese Ereignisse ausblenden, die nicht häufig auftreten.

Um das Debugging von einem Performance-Ereignis zu starten
  1. Überprüfen Sie unter Leistungsverletzungen die aufgezeichneten Leistungsereignisse, deren Gesamtausführungszeiten und andere Ereignisinformationen. Dann vertiefen Sie sich in die Methoden, die während eines bestimmten Performance-Ereignisses aufgerufen wurden.

    Anzeigen von Leistungsereignisdetails

    Sie können auch einfach auf das Ereignis doppelklicken.

  2. Überprüfen Sie auf der Ereignisseite die Ausführungszeiten für diese Aufrufe. Suchen Sie einen langsamen Aufruf im Ausführungsbaum.

    Die langsamsten Anrufe werden in ihrem eigenen Abschnitt angezeigt, wenn mehrere Anrufe, geschachtelt oder anderweitig, vorhanden sind.

  3. Erweitern Sie diesen Aufruf, um alle geschachtelten Aufrufe und Parameterwerte zu überprüfen, die zu diesem Zeitpunkt aufgezeichnet wurden.

    (Tastatur: Zum Ein- oder Ausblenden eines geschachtelten Aufrufs drücken Sie die Pfeil-nach-rechts-Taste oder die Pfeil-nach-links-Taste. Um Parameterwerte eines geschachtelten Aufrufs ein- oder auszublenden, drücken Sie die Leertaste.)

    Starten Sie das Debuggen vom Aufruf aus.

    Starten des Debugging von einem Methodenaufruf

    Sie können auch einfach auf den Anruf doppelklicken oder die EINGABETASTE drücken.

    Wenn sich die Methode im Anwendungscode befindet, wechselt Visual Studio zu dieser Methode.

    Gehe vom Leistungsereignis zum Anwendungscode

    Jetzt können Sie andere aufgezeichnete Werte, den Aufrufstapel überprüfen, Schritt für Schritt durch Ihren Code gehen oder das IntelliTrace-Fenster verwenden, um sich zwischen anderen Methoden, die während dieses Leistungsereignisses aufgerufen wurden, rückwärts oder vorwärts in der Zeit zu bewegen.

Ausnahmedaten

Überprüfen Sie die Ausnahmen, die für Ihre App ausgelöst und aufgezeichnet wurden. Sie können Ausnahmen gruppieren, die denselben Typ und denselben Aufrufstapel aufweisen, sodass nur die letzte Ausnahme angezeigt wird.

So starten Sie das Debuggen aus einer Ausnahme
  1. Überprüfen Sie unter "Ausnahmedaten" die aufgezeichneten Ausnahmeereignisse, deren Typen, Nachrichten und wann die Ausnahmen aufgetreten sind. Um tiefer in den Code einzutauchen, beginnen Sie mit dem Debuggen vom neuesten Ereignis in einer Ausnahmengruppe.

    Starten des Debuggens aus Ausnahmeereignis

    Sie können auch einfach auf das Ereignis doppelklicken. Wenn die Ereignisse nicht gruppiert sind, wählen Sie "Dieses Ereignis debuggen" aus.

    Wenn die Ausnahme im Anwendungscode aufgetreten ist, wechselt Visual Studio an die Stelle, an der die Ausnahme aufgetreten ist.

    Vom Ausnahmeereignis zum Anwendungscode wechseln

    Jetzt können Sie andere aufgezeichnete Werte, den Aufrufstapel überprüfen oder das IntelliTrace-Fenster verwenden, um sich zwischen anderen aufgezeichneten Ereignissen, dem verwandten Code und den zu diesen Zeitpunkten aufgezeichneten Werten im Zeitverlauf rückwärts oder vorwärts zu bewegen.

    Spalte Zeigt die
    Typ .NET-Typ der Ausnahme
    Neueste Nachricht für gruppierte Ausnahmen oder Nachricht für nicht gruppierte Ausnahmen Die von der Ausnahme bereitgestellte Nachricht
    Anzahl für gruppierte Ausnahmen Die Häufigkeit, mit der die Ausnahme ausgelöst wurde
    Thread-ID für nicht gruppierte Ausnahmen ID des Threads, der die Ausnahme ausgelöst hat
    Neueste Ereigniszeit oder Ereigniszeit Zeitstempel, der beim Auslösen der Ausnahme aufgezeichnet wurde
    Aufrufstapel Aufrufstapel für eine Ausnahme.

    Um den Aufrufstapel anzuzeigen, wählen Sie eine Ausnahme in der Liste aus. Der Aufrufstapel wird unterhalb der Ausnahmeliste angezeigt.

Analyse

Diagnostizieren Sie Probleme mit SharePoint 2010- und SharePoint 2013-Anwendungen mithilfe einer SharePoint-Korrelations-ID oder überprüfen Sie alle nicht behandelten Ausnahmen, die der Microsoft Monitoring Agent gefunden hat.

  • Verwenden Sie eine SharePoint-Korrelations-ID, um ihre übereinstimmende Webanforderung und -ereignisse zu finden. Wählen Sie ein Ereignis aus, und beginnen Sie dann mit dem Debuggen an dem Punkt, an dem und wann das Ereignis aufgetreten ist.

  • Wenn der Microsoft Monitoring Agent unbehandelte Ausnahmen gefunden hat, wählen Sie eine Ausnahme aus, und beginnen Sie dann mit dem Debuggen an dem Punkt, an dem und wann die Ausnahme aufgetreten ist.

Starten des Debuggens mit einer SharePoint-Korrelations-ID
  1. Kopieren Sie die SharePoint-Korrelations-ID aus der Quelle.

    Beispiel:

    IntelliTrace - SharePoint-Fehler - Korrelations-ID

  2. Öffnen Sie die ITrace-Datei, wechseln Sie dann zur Analyse , und geben Sie die SharePoint-Korrelations-ID ein, um die übereinstimmende Webanforderung und aufgezeichnete Ereignisse zu überprüfen.

    IntelliTrace-Protokoll – Eingeben der SharePoint-Korrelations-ID

  3. Überprüfen Sie unter "Anforderungsereignisse" die Ereignisse. Beginnend am Anfang werden Ereignisse in der Reihenfolge angezeigt, in der sie aufgetreten sind.

    1. Wählen Sie ein Ereignis aus, um dessen Details anzuzeigen.

    2. Wählen Sie "Debuggen starten" aus, um das Debuggen an dem Punkt zu starten, an dem das Ereignis aufgetreten ist.

      IntelliTrace-Protokolldatei – Anzeigen der Webanforderung + Ereignisse

    Sie können diese Arten von SharePoint-Ereignissen zusammen mit IntelliTrace-Ereignissen sehen:

  • Benutzerprofilereignisse

    Diese Ereignisse treten auf, wenn SharePoint ein Benutzerprofil lädt und wenn Benutzerprofileigenschaften gelesen oder geändert werden.

  • ULS-Ereignisse (Unified Logging System)

    Microsoft Monitoring Agent zeichnet eine Teilmenge von SharePoint ULS-Ereignissen und diesen Feldern auf:

    IntelliTrace-Feld SharePoint ULS-Feld
    ID EventID
    Grad Grad
    Kategorie-ID Kategorie-ID
    Kategorie Kategorie
    Fläche Produkt
    Output Meldung
    Korrelations-ID Korrelations-ID
Starten des Debuggens aus einer nicht behandelten Ausnahme
  1. Wählen Sie eine SharePoint-Korrelations-ID für eine Ausnahme aus. Ausnahmen werden nach Typ und Aufrufstapel gruppiert.

  2. (Optional) Erweitern Sie den Aufrufstapel , um den Aufrufstapel für eine Gruppe von Ausnahmen anzuzeigen.

  3. Wählen Sie "Debug exception" aus, um mit dem Debuggen an dem Punkt zu beginnen, an dem und wann die Ausnahme aufgetreten ist.

    IntelliTrace-Protokoll – Nicht behandelte Ausnahmen in SharePoint

    Eine exemplarische Vorgehensweise finden Sie unter Walkthrough: Debugging a SharePoint Application by Using IntelliTrace. Informationen zu den Arten von Daten, die der Agent erfasst, finden Sie unter IntelliTrace-Features.

Threadsliste

Überprüfen Sie die aufgezeichneten Threads, die im Zielprozess ausgeführt wurden. Sie können mit dem Debuggen aus dem ersten gültigen IntelliTrace-Ereignis in einem ausgewählten Thread beginnen.

So starten Sie das Debuggen von einem bestimmten Thread
  1. Wählen Sie unter "Threadsliste" einen Thread aus.

  2. Wählen Sie unten in der Threadsliste " Debuggen starten" aus. Sie können auch auf einen Thread doppelklicken.

    Doppelklicken Sie auf " Hauptthread", um mit dem Debuggen zu beginnen, von dem die App beginnt. Siehe IntelliTrace-Features.

    Threaddaten, die der Benutzer erstellt, sind möglicherweise nützlicher als Threads, die ein Server für von IIS gehostete Web-Apps erstellt und verwaltet.

Spalte Zeigt die
ID Thread-ID-Nummer
Name Thread Name. Unbenannte Threads werden als "<Kein Name>" angezeigt.
Startzeit Zeitpunkt der Erstellung des Threads
Endzeit Zeitpunkt, zu dem der Thread abgeschlossen wurde
So starten Sie das Debuggen eines bestimmten Testschritts
  1. Erweitern Sie das Raster "Testschritte". Wählen Sie einen Testschritt aus.

  2. Wählen Sie unten im Raster "Testschritte" die Option "Debuggen starten" aus. Sie können auch auf einen Testschritt doppelklicken.

    Dadurch wird das Debuggen vom ersten gültigen IntelliTrace-Ereignis nach dem ausgewählten Testschritt gestartet.

    Wenn Testdaten vorhanden sind, versucht IntelliTrace, den zugeordneten Team Foundation Server-Build aufzulösen, der zum Ausführen der Testausführung verwendet wurde. Wenn der Build gefunden wird, werden die zugehörigen Symbole für die App automatisch aufgelöst.

Feld Zeigt die
Testsitzung Testsitzungen, die aufgezeichnet wurden. In der Regel gibt es nur eine. Diese Liste ist leer, wenn Testdaten mithilfe eines manuellen explorativen Tests erstellt wurden.
Testfall Testfälle aus der ausgewählten Testsitzung. Diese Liste ist leer, wenn Testdaten mithilfe eines manuellen explorativen Tests erstellt wurden.
Testschritte-Raster Testschritte, die mit dem Testergebnis "bestanden" oder "nicht bestanden" aufgezeichnet wurden

Systeminformationen

Dieser Abschnitt enthält Details zum System, das die App gehostet hat, z. B. Hardware, Betriebssystem, Umgebungs- und prozessspezifische Informationen.

Module

In diesem Abschnitt werden die Module gezeigt, die der Zielprozess geladen hat. Module werden in der Reihenfolge angezeigt, in der sie geladen wurden.

Spalte Zeigt die
Modulname Moduldateiname
Modulpfad Speicherort des Datenträgers, an dem das Modul geladen wurde
Modul-ID Eindeutiger Bezeichner des Moduls, das versionsspezifisch ist und zu den entsprechenden Symboldateien (PDB) beiträgt. Siehe Suchen von Symboldateien (.pdb) und Quelldateien.

Wo erhalte ich weitere Informationen?

Verwenden des eigenständigen IntelliTrace-Sammlers

IntelliTrace-Features

Sammeln weiterer Diagnosedaten in manuellen Tests

IntelliTrace

Foren

Visual Studio-Debugger