Suchen

Preview in Visual Studio Enterprise 2019 Time Travel Debugging für Web Apps

| Redakteur: Stephan Augsten

Microsoft spendiert Visual Studio Enterprise 2019 eine Preview auf ein „Zeitreise“-Feature: Mittels Time Travel Debugging, kurz TTD, lassen sich innerhalb einer Azure Virtual Machine laufende Webanwendungen aufzeichnen.

Firma zum Thema

Das Time Travel Feature ist direkt in den Snapshot Debugger von Visual Studio Enterprise integriert.
Das Time Travel Feature ist direkt in den Snapshot Debugger von Visual Studio Enterprise integriert.
(Bild: Microsoft)

Ziel der TDD-Funktion ist es, den Ausführungspfad einer Webanwendung genau zu rekonstruieren und wiederzugeben. Das Feature integriert mit dem „Snapshot Debugger“ und erlaubt es, jede Codezeile beliebig oft aufzurufen, um innerhalb der Produktionsumgebung auftretende Probleme zu isolieren und zu identifizieren.

Letztlich ist das Time Travel Debugging eine Reverse-Debugging-Ansatz, mit dem sich die Ausführung von Code in einer App oder einem Prozess aufzeichnen und sowohl vorwärts als auch rückwärts wiedergeben lässt. Die Aufnahme wird dabei direkt in Visual Studio 2019 Enterprise wiedergegeben, die Nutzung setzt eine Azure Virtual Machine (VM) voraus, die auf einem Windows-Betriebsssystem mit ASP.NET 4.8 oder höher läuft.

TTD zeichnet auf dem Thread auf, der den Snappoint-Bedingungen entspricht, und läuft in der Regel bis zum Ende der jeweiligen Methode. Wird hinter dem Snappoint aber vor dem Ende der Methode ein „await“ definiert, stoppt die Aufzeichnung genau an dieser Stelle. Die Funktion soll als Preview innerhalb Visual Studio 2019 mit einer Go-Live-Lizenz enthalten sein.

In der ersten Vorschau unterstützt TDD nur AMD64-basierende Web-Applikationen, die auf einer Azure Virtual Machine (VM) laufen. Der Grund dafür liegt darin, dass laut Microsoft die Aufzeichnung laufender Prozesse einen erheblichen Aufwand verursacht. Je nach Prozessgröße und Anzahl der aktiven Threads könnte sich der Prozess deutlich verlangsamen. Zudem könne sich das Debugging unter bestimmten Bedingungen verschlechtern, beispielsweise wenn sich der Garbage Collector in der Komprimierungsphase befindet.

Microsoft beziffert die TTD-Dateigrößen auf mehrere hundert Megabyte bis zu mehreren Gigabyte, je nach Länge der Sitzung und Laufzeit der die Web-App. Erstellte Dateien werden jedoch bereinigt, sobald die Snapshot Debugger-Sitzung beendet ist und ein App Pool Recycling eingeleitet wird. Für die Preview empfiehlt Microsoft, die Azure VM mit mindestens 8 Gigabyte RAM auszustatten.

Artikelfiles und Artikellinks

(ID:45858273)