Debuggen Ihrer Anwendung mit IntelliTrace-Protokolldateien (.iTrace)
Sie können eine IntelliTrace-Debugsitzung direkt aus einer IntelliTrace-Protokolldatei (ITRACE-Datei) starten.Diese Datei enthält Ausnahmen, Webanforderungen, Threads, Testschritte, Module und weitere Systeminfo, die IntelliTrace erfasst, während die Anwendung ausgeführt wird.
Sehen Sie IntelliTrace in Aktion:
Sammeln und Analysieren von IntelliTrace-Daten in der Produktion (Channel 9-Video)
Entwickeln, Testen und Produktions-Debuggen für SharePoint (Channel 9-Video)
Anforderungen
Eine ITRACE-Datei aus einer der folgenden Quellen:
Eine IntelliTrace-Sitzung in Visual Studio Ultimate.Siehe Aufzeichnung der Codeausführung mit IntelliTrace zum Debuggen in Visual Studio.
Eine Testsitzung in Microsoft Test Manager.Dadurch wird einer Team Foundation Server-Arbeitsaufgabe eine ITRACE-Datei angefügt.Siehe Gewusst wie: Sammeln von IntelliTrace-Daten zum Beheben schwieriger Probleme.
Der eigenständige Collector für Apps, die außerhalb von Visual Studio ausgeführt werden.Siehe Sammeln von IntelliTrace-Daten außerhalb von Visual Studio mit eigenständiger Auflistung.
Visual Studio 2012.1: Apps, die von System Center 2012 Service Pack 1 (SP1) - Vorgangs-Manager mit IntelliTrace Profiling Management Pack überwacht werden.Siehe Konfigurieren der Integration mit IntelliTrace in System Center 2012.
Visual Studio Ultimate auf einem Entwicklungscomputer oder einem anderen Computer zum öffnen von ITRACE-Dateien
Hinweis Um mit IntelliTrace debuggen und Code schrittweise ausführen zu können, müssen Sie über die entsprechenden Quelldateien und Symboldateien verfügen.Stellen Sie sicher, dass sich die Symboldateien im Visual Studio-Symbolpfad befinden.Andernfalls kann Visual Studio die Quellspeicherorte nicht auflösen und zeigt eine Meldung an, die darauf hinweist, dass die Symbole nicht gefunden wurden. Siehe Suchen von Symbol (.pdb)-, Quell- und Binärdateien.
Was möchten Sie tun?
Öffnen einer IntelliTrace-Protokolldatei
Lesen Sie die IntelliTrace-Protokolldatei.
Starten des Debuggens über eine IntelliTrace-Protokolldatei
Öffnen einer IntelliTrace-Protokolldatei
Öffnen Sie die ITRACE-Datei auf einen Computer mit Visual Studio Ultimate.
Doppelklicken Sie außerhalb von Visual Studio auf die ITRACE-Datei, oder öffnen Sie die Datei aus Visual Studio heraus.
- oder -
Wenn die ITRACE-Datei einer Team Foundation Server-Arbeitsaufgabe angefügt ist, führen Sie folgende Schritte in der Arbeitsaufgabe durch:
Suchen Sie in Alle Links die ITRACE-Datei.Öffnen Sie sie.
- oder -
Wählen Sie unter Reproduktionsschritte den Link IntelliTrace aus.
Tipp |
---|
Wenn Sie die ITRACE-Datei während des Debuggens geschlossen haben, können Sie sie einfach erneut öffnen.Wechseln Sie zum Menü Debuggen, wählen Sie die Option IntelliTrace, Protokollzusammenfassung anzeigen aus.Sie können Protokollzusammenfassung anzeigen auch im Fenster IntelliTrace auswählen.Dieser Befehl ist nur beim Debuggen mit IntelliTrace verfügbar. |
Lesen Sie die IntelliTrace-Protokolldatei.
Einige der folgenden Abschnitte in der ITRACE-Datei werden nur angezeigt, wenn Daten von einer bestimmten Quelle, beispielsweise Test Manager- oder SharePoint 2010-Anwendungen, mit dem eigenständigen Collector gesammelt wurden.
Abschnitt |
Enthält |
Sammelquelle (Visual Studio Ultimate, Test Manager, eigenständiger Collector) |
---|---|---|
Analyse |
Nur für SharePoint 2010-Anwendungen.In diesem Abschnitt können Sie IntelliTrace- und SharePoint-Ereignisse, wie Debuggerereignisse, ULS-Ereignisse, Ausnahmen und andere vom Collector aufgezeichnete Daten anzeigen. |
Eigenständiger Collector für Visual Studio 2012.1 |
Threadliste |
Threads, die während der Auflistung ausgeführt wurden |
Alle Quellen |
Webanforderungen |
Webanforderungen, die an einen IIS-Anwendungspool übermittelt wurden.Diese Daten sind mit den Daten vergleichbar, die in IIS W3C-Protokolldateien erfasst werden. |
Eigenständiger Collector: nur von IIS gehostete Webanwendungen |
Ausnahmedaten |
Ausnahmen, die von der Anwendung während der Auflistung ausgelöst wurden, einschließlich der vollständigen Aufrufliste für jede Ausnahme |
Alle Quellen |
Testdaten |
Testschritte und ihre Ergebnisse aus einer Testsitzung |
Test Manager |
Systeminfo |
Einstellungen und Spezifikationen des Hostsystems |
Alle Quellen |
Module |
Module, die während der Auflistung geladen wurden |
Alle Quellen |
Starten des Debuggens über eine IntelliTrace-Protokolldatei
In den meisten Abschnitten können Sie Ereignisse oder andere Elemente überprüfen. Wählen Sie ein Element aus und wählen dann Debugging starten aus.Hierdurch wird eine IntelliTrace-Debugsitzung an dem Punkt gestartet, an dem ein Ereignis aufgetreten ist.
Tipp |
---|
Zum Sortieren der Daten, wählen Sie die Spaltenheader aus.Zum Filtern der Daten, verwenden Sie das Suchfeld.Nur-Text-Suche funktioniert bei allen Spalten mit Ausnahme der Zeitspalten.Im Abschnitt Webanforderungen können Sie die Suchvorgänge zu einer bestimmten Spalte auch filtern. |
Analyse
Dieser Abschnitt wird bei SharePoint 2010-Anwendungen nur dann angezeigt, wenn Sie Daten mit dem Collector in Visual Studio 2012.1 aufgezeichnet haben.Siehe Sammeln von IntelliTrace-Daten außerhalb von Visual Studio mit eigenständiger Auflistung.
In diesem Abschnitt können Sie die folgenden Aufgaben ausführen:
Verwenden einer SharePoint-Korrelations-ID, um die entsprechende Webanforderung und Ereignisse zu suchenSie können ein Ereignis auswählen und dann an dem Punkt mit dem Debuggen beginnen, an dem das Ereignis aufgetreten ist.
Überprüfen aller vom Collector gefundenen AusnahmefehlerSie können ein Ausnahme auswählen und dann an dem Punkt mit dem Debuggen beginnen, an dem die Ausnahme aufgetreten ist.
Hinweis |
---|
Wenn die Meldung angezeigt wird, dass die Symbole nicht gefunden wurden, kann Visual Studio die Quellspeicherorte nicht auflösen.Stellen Sie sicher, dass sich die Symboldateien (pdb) der Anwendung im Visual Studio-Symbolpfad befinden.Siehe Suchen von Symbol (.pdb)-, Quell- und Binärdateien. |
Starten des Debuggens mit einer SharePoint-Korrelations-ID
Kopieren der SharePoint-Korrelations-ID aus der Quelle
Beispiel:
In der ITRACE-Datei können Sie die SharePoint-Korrelations-ID unter Analyse eingeben.Dadurch können Sie die entsprechende Anforderung suchen und die aufgezeichneten Ereignisse anzeigen.
Überprüfen Sie die Ereignisse unter Angeforderte Ereignisse.Ereignisse werden von oben nach unten in der Reihenfolge ihres Auftretens angezeigt.
Wählen Sie zum Anzeigen von Details ein Ereignis aus.
Wählen Sie Debugging starten, um das Debuggen an dem Punkt zu starten, an dem das Ereignis aufgetreten ist.
Sie können diese Art von SharePoint-Ereignissen zusammen mit IntelliTrace-Ereignissen anzeigen:
Benutzerprofilereignisse
Diese Ereignisse treten auf, wenn SharePoint ein Benutzerprofil lädt und wenn Benutzerprofileigenschaften gelesen oder geändert werden.
Einheitliche Ereignisse des Protokollierungs-Systems (ULS)
Der eigenständige Collector zeichnet eine Teilmenge der SharePoint ULS-Ereignisse und dieser Felder auf:
IntelliTrace-Feld
SharePoint ULS-Feld
Id
EventID
Ebene
Ebene
Kategorie-ID
Kategorie-ID
Kategorie
Kategorie
Bereich
Produkt
Ausgabe
Meldung
Korrelations-ID
Korrelations-ID
Starten des Debuggens aus einem Ausnahmefehler heraus
Wählen Sie eine SharePoint-Korrelations-ID für eine Ausnahme aus.Ausnahmen werden nach Typ und Aufrufliste gruppiert.
(Optional) Erweitern Sie die Aufrufliste, um die Aufrufliste für eine Ausnahmengruppe anzuzeigen.
Wählen Sie Ausnahme debuggen aus, um das Debuggen an dem Punkt zu starten, an dem die Ausnahme aufgetreten ist.
Eine exemplarische Vorgehensweise finden Sie unter Exemplarische Vorgehensweise: Debuggen einer SharePoint-Anwendung mithilfe von IntelliTrace.Die Arten von Daten, die vom Collector aufgezeichnet werden, finden Sie unter Aufzeichnung der Codeausführung mit IntelliTrace zum Debuggen in Visual Studio.
Threadliste
In diesem Abschnitt werden aufgezeichnete Threads veranschaulicht, die im Zielprozess ausgeführt wurden.Sie können das Debuggen vom ersten gültigen IntelliTrace-Ereignis in einem ausgewählten Thread starten.
So starten Sie das Debuggen über einen bestimmten Thread
Wählen Sie unter Threadliste einen Thread aus.
Wählen Sie am unteren Rand von Threadliste die Option Debuggen starten aus.Sie können auch auf einen Thread doppelklicken.
Doppelklicken Sie auf Hauptthread, um das Debuggen vom Anfang der Anwendung aus zu starten.Siehe Aufzeichnung der Codeausführung mit IntelliTrace zum Debuggen in Visual Studio.
Von einem Benutzer erstellte Threaddaten sind möglicherweise nützlicher, als Threads, die von einem Server für IIS-gehostete Webanwendungen erstellt und verwaltet werden.
Spalte |
Enthält Folgendes |
---|---|
ID |
Thread-ID-Nummer |
Name |
Threadname.Unbenannte Threads werden als "<Kein Name>" angezeigt. |
Startzeit |
Zeitpunkt der Threaderstellung. |
Endzeit |
Zeitpunkt des Threadabschlusses |
Webanforderungen
In diesem Abschnitt werden aufgezeichnete Webanforderungen veranschaulicht, die an einen IIS-Anwendungspool gesendet wurden.Sie können eine Webanforderung auswählen, um Ereignisse zu überprüfen, die für diese Anforderung aufgezeichnet werden.Sie können das Debuggen dann über ein bestimmtes Ereignis starten.
In der Standardeinstellung werden Webanforderungen von oben nach unten in der Reihenfolge angezeigt, in der sie der Server erhält.
So zeigen Sie aufgezeichnete Ereignisse für eine bestimmte Webanforderung an
Wählen Sie unter Webanforderungen eine Webanforderung aus.
Wählen Sie am unteren Rand von Webanforderungen die Option Anforderungsdetails aus.Sie können auf die Webanforderung auch doppelklicken.
Die Seite Anforderungsdetails öffnet für die ausgewählte Webanforderung. Dort werden IntelliTrace-Ereignisse angezeigt, die für die Anforderung aufgezeichnet wurden.Ereignisse werden von oben nach unten in der Reihenfolge ihres Auftretens angezeigt.Filtern Sie Ereignisse, indem Sie aus der Kategorieliste auswählen oder indem Sie das Suchfeld verwenden.Siehe Aufzeichnung der Codeausführung mit IntelliTrace zum Debuggen in Visual Studio.
Tipp Die Seite Anforderungsdetails wird in einer Vorschauregisterkarte geöffnet.Diese Registerkarte wird durch die neue Seite Anforderungsdetails ersetzt, wenn Sie eine andere Webanforderung auswählen.Wählen Sie Höher stufen auf der Registerkarte aus, um die Vorschauregisterkarte beizubehalten.Die folgende Webanforderung wird in einer neuen Vorschauregisterkarte geöffnet.
So starten Sie das Debuggen über ein bestimmtes Ereignis
Wählen Sie unter Angeforderte Ereignisse ein Ereignis aus.
Wählen Sie am unteren Rand von Angeforderte Ereignisse die Option Debuggen starten aus.Sie können auf ein Ereignis auch doppelklicken.
Tipp Wenn die ITRACE-Datei Informationen zu Funktionsaufrufen einschließt, können Sie den Code vom Ort des Ereignisses aus Schritt für Schritt durcharbeiten.Sie können auch Parameter und Rückgabewerte anzeigen.
So sammeln Sie Aufrufinformationen:
Konfigurieren Sie IntelliTrace in Visual Studio Ultimate, um Aufrufinformationen zu sammeln.Siehe Aufzeichnung der Codeausführung mit IntelliTrace zum Debuggen in Visual Studio.
Verwenden Sie für den eigenständigen IntelliTrace Collector entweder den Auflistungsplan collection_plan.ASP.NET.trace.xml oder einen benutzerdefinierten Auflistungsplan.Siehe Sammeln von IntelliTrace-Daten außerhalb von Visual Studio mit eigenständiger Auflistung.
Wenn die Meldung angezeigt wird, dass die Symbole nicht gefunden wurden, kann Visual Studio die Quellspeicherorte nicht auflösen.Stellen Sie sicher, dass sich die Symboldateien (pdb) der Webanwendung im Visual Studio-Symbolpfad befinden.Siehe Suchen von Symbol (.pdb)-, Quell- und Binärdateien.
Spalte |
Enthält Folgendes |
---|---|
Methode |
Mit der Anforderung übermittelte HTTP-Methode |
Ziel-URL |
Mit der Anforderung übermittelte Ziel-URL |
Benötigte Zeit (ms) |
Zeitraum in Millisekunden zwischen dem Eingang der Anforderung beim Server und der Ausgabe des Ergebnisses vom Server |
Status |
Im Ergebnis zurückgegebener HTTP-Statuscode |
Sitzungs-ID |
Vom IIS verwendete Sitzungs-ID, um Benutzer zu unterscheiden. Der Wert Sitzungs-ID ist lediglich eine zunehmende ganze Zahl, die verwendet wird, um zwischen Sitzungsbenutzern zu unterscheiden, und steht nicht im Zusammenhang mit dem ASP.NET-Konzept der SessionID.Somit gehören Webanforderungen mit der gleichen Sitzungs-ID zur gleichen Benutzersitzung. |
Client-IP |
Von IIS aufgezeichnete IP-Adresse für die übermittelte Anforderung |
Benutzer-Agent |
Mit der HTTP-Anforderung übermittelter Wert der Benutzer-Agent-Zeichenfolge |
Startzeit |
Die Zeit, zu der der Server die Anforderung erhalten hat |
Endzeit |
Die Zeit, zu der der Server dem Client geantwortet hat |
Filtern und gruppieren Sie die Webanforderungen, um die Daten aus einer Benutzerperspektive anzuzeigen.Beispiel:
Filtern Sie Anforderungen nach Status, um Fehler zu suchen.
Gruppieren Sie Fehler nach Ziel-URL oder Sitzungs-ID, um Trends oder Benutzerverhalten anzuzeigen.
Sie können Suchvorgänge zu einer bestimmten Spalte auch filtern.Geben Sie den Spaltennamen ohne Leerzeichen, mit einem Doppelpunkt und dem Suchwert ein.
Um beispielsweise nach Webanforderungen zu suchen, die die GET-Methode mit einer bestimmten Sitzungs-ID verwendet haben, geben Sie Folgendes ein:
Methode:GET;SessionId:2
Sie können einen Filter pro Spalte verwenden.Berücksichtigen Sie die QuickInfo des Suchfelds Webanforderungen, um die filterbaren Spalten anzuzeigen.
Ausnahmedaten
In diesem Bereich können Sie aufgezeichnete Ausnahmen überprüfen, die von der App ausgelöst wurden.In der Standardeinstellung werden die aktuellen Ausnahmen am Anfang angezeigt, da Ausnahmen anhand der Ereigniszeit in absteigender Reihenfolge sortiert werden.
So starten Sie das Debuggen über eine bestimmte Ausnahme
Wählen Sie unter Ausnahmedaten eine Ausnahme aus.
Wählen Sie am unteren Rand von Ausnahmedaten die Option Debuggen starten aus.Sie können auf eine Ausnahme auch doppelklicken.
Hierdurch wird das Debuggen zu der Zeit, als die Ausnahme ausgelöst wurde, gestartet.
Tipp |
---|
Suchen Sie nach mehreren Ausnahmen, die den gleichen Typ und die gleiche Thread-ID haben und sequenziell angezeigt werden.Dies wird häufig durch eine Ausnahme verursacht, die ausgelöst, abgefangen und dann erneut ausgelöst wurde. Um herauszufinden, ob dies der Fall ist, wählen Sie jede dieser Ausnahmen aus, und zeigen Sie die Aufrufliste an.Überprüfen Sie, ob die Aufrufliste länger oder kürzer wird.Wenn die kürzere Liste mit dem Anfang der längeren Aufrufliste übereinstimmt und die Thread-ID identisch ist, besteht die Möglichkeit, dass die gleiche Ausnahme erneut ausgelöst wurde.Die Ausnahme mit der längsten Aufrufliste könnte der Quelle des Problems am nächsten liegen. |
Spalte |
Enthält Folgendes |
---|---|
Typ |
.NET-Typ der Ausnahme |
Meldung |
Von der Ausnahme bereitgestellte Meldung |
Thread-ID |
ID des Threads, der die Ausnahme ausgelöst hat |
HResult |
Der in der Ausnahme angegebene Fehlercode.Verfügbar, wenn dieser Wert in der Ausnahme festgelegt wurde. |
Ereigniszeit |
Der beim Auslösen der Ausnahme aufgezeichnete Zeitstempel |
Aufrufliste |
Aufrufliste für eine Ausnahme. Wählen Sie zum Anzeigen der Aufrufliste eine Ausnahme in der Liste aus.Die Aufrufliste wird unter der Ausnahmeliste angezeigt. |
Testdaten
In diesem Abschnitt können Sie die vom Test Manager beim Testen der Anwendung gesammelten Daten überprüfen.
So starten Sie das Debuggen über einen bestimmten Testschritt
Erweitern Sie Testschritte-Raster.Wählen Sie einen Testschritt aus.
Wählen Sie am unteren Rand von Testschritte-Raster die Option Debuggen starten aus.Sie können auch auf einen Testschritt doppelklicken.
Hierdurch wird das Debuggen über das erste gültige 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 des Testlaufs verwendet wurde.Wenn der Build gefunden wird, werden die zugeordneten Symbole für die Anwendung automatisch aufgelöst.
Feld |
Enthält Folgendes |
---|---|
Testsitzung |
Testsitzungen, die aufgezeichnet wurden.In der Regel ist nur eine vorhanden.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 "Erfolgreich" oder "Fehler" aufgezeichnet wurden |
Systeminfo
Dieser Abschnitt zeigt Informationen über das System, das die Anwendung gehostet hat, wie z. B. Hardware, Betriebssystem, umgebungsbedingte und prozessspezifische Informationen.
Module
In diesem Abschnitt werden die Module angezeigt, die vom Zielprozess geladen wurden.Module werden in der Reihenfolge angezeigt, in der sie geladen wurden.
Spalte |
Enthält Folgendes |
---|---|
Modulname |
Moduldateiname |
Modulpfad |
Speicherort auf einem Datenträger, in dem das Modul geladen wurde |
Modul-ID |
Eindeutiger Bezeichner des Moduls, der versionsspezifisch ist und zu den übereinstimmenden Symboldateien (PDB) beiträgt.Siehe [OBSOLETE] Gewusst wie: Angeben von Symbolspeicherorten und Ladeverhalten. |
Wo kann ich weitere Informationen abrufen?
Sammeln von IntelliTrace-Daten außerhalb von Visual Studio mit eigenständiger Auflistung
Aufzeichnung der Codeausführung mit IntelliTrace zum Debuggen in Visual Studio
Gewusst wie: Sammeln von IntelliTrace-Daten zum Beheben schwieriger Probleme
Debuggen Ihrer Anwendung durch Aufzeichnung der Codeausführung mit IntelliTrace
Blogs
Visual Studio ALM und Team Foundation Server
Foren
Empfehlungen
Tests für fortlaufende Übermittlung mit Visual Studio 2012 - Kapitel 6: Eine Test-Toolbox
Videos
Channel-9-Video – Visual Studio Ultimate 2012: Sammeln und Analysieren von Daten in der Produktion
Channel 9: Entwickeln, Testen und Produktions-Debuggen für SharePoint