2016-03-18 36 views
0

Ich habe einen eigenständigen Collector verwendet, um Traces von einem Produktionssystem mit dem eigenständigen Collector und dem Standardplan collection_plan.ASP.NET.trace.xml zu sammeln. Wenn ich die Ablaufverfolgungsdatei unter Verwendung von Visual Studio 2015 öffne, kann ich bestimmte Ausnahmen aus meinem Code sehen, sehe aber keine Funktionsparameter in den Locals/Auto-Fenstern. Ich stelle sicher, dass die richtige Version der PDB-Dateien und der Pfad in VS korrekt eingerichtet ist. Wie kann ich Details zu Funktionsparametern erhalten?So rufen Sie Funktionsparameter ab

Antwort

1

Der IntelliTrace-Protokoll-Debugger erfasst keine Werte lokaler Variablen. Soweit ich weiß, ist der Grund dafür Leistung. Mit anderen Worten, wenn IntelliTrace Werte von lokalen Variablen aufzeichnete, wäre dies extrem langsam. Selbst jetzt, mit diesen Einschränkungen, kann es ernsthafte Auswirkungen auf überwachte Anwendungen haben.

Ich denke, dass es ein wichtiger Nachteil von IntelliTrace ist. Es gibt historische Debugger für andere High-Level-Technologien, die diese Einschränkungen nicht haben. Zum Beispiel Chronon für Java.

Am Ende ist es wert, zu sagen, dass IntelliTrace aufnehmen:

  1. Werte von Parametern.
  2. Werte von Methoden zurückgegeben.

Allerdings sind hier auch einige Einschränkungen d.h .:

  1. IntelliTrace werden nur Werte von Parametern aufzeichnen, die primitive Datentypen sind.
  2. Bei Referenztypen (Klassen) zeichnet IntelliTrace nur Werte von Feldern/Eigenschaften auf, die primitive Datentypen sind.
  3. Bei Referenztypen (Klassen) IntelliTrace analysiert das Objektdiagramm nicht.
+0

aber es zeigt auch keine Parameter. Wo zeigt es diese Parameter im Fenster "Locals (Historical Debugging)"? Das Fenster ist leer und enthält keine Einträge –

+0

Ja, Sie sollten es im Fenster "Lokal" sehen. Auch im Autos Fenster. Könnten Sie Ihren Sammelplan teilen? Vielleicht ist die Konfiguration ein Problem. –

+0

wie man es teilt? Wenn ich versuche, es in meine Frage hinzuzufügen, erhalte ich einen Fehler, dass es das Limit des Körpers überschreitet. –

Verwandte Themen