War diese Seite hilfreich?
Ihr Feedback ist uns wichtig. Teilen Sie uns Ihre Meinung mit.
Weiteres Feedback?
1500 verbleibende Zeichen
Exportieren (0) Drucken
Alle erweitern

Debuggen eines Cloud-Diensts oder eines virtuellen Computers in Visual Studio

Letzte Aktualisierung: Juni 2015

Visual Studio bietet verschiedene Optionen zum Debuggen von Azure Cloud Services und virtuellen Computern.

Dieses Thema enthält die folgende Abschnitte.

Sie können Zeit und Geld sparen, indem Sie den Azure-Serveremulator zum Debuggen Ihres Cloud-Diensts auf einem lokalen Computer verwenden. Durch lokales Debuggen eines Diensts vor der Bereitstellung können Sie die Zuverlässigkeit und Leistung verbessern, ohne dass Kosten für Rechenzeiten anfallen. Einige Fehler treten jedoch ggf. nur auf, wenn Sie einen Cloud-Dienst in Azure selbst ausführen. Sie können diese Fehler debuggen, wenn Sie Remotedebugging beim Veröffentlichen Ihres Diensts aktivieren und den Debugger dann an eine Rolleninstanz anfügen.

Der Emulator simuliert den Serverdienst von Azure und wird in Ihrer lokalen Umgebung ausgeführt, damit Sie Ihren Cloud-Dienst testen und debuggen können, bevor Sie ihn bereitstellen. Der Emulator behandelt den Lebenszyklus der Rolleninstanzen und bietet Zugriff auf simulierte Ressourcen, z. B. auf lokalen Speicher. Wenn Sie den Dienst von Visual Studio aus debuggen oder ausführen, startet Visual Studio den Emulator automatisch als Hintergrundanwendung und stellt den Dienst dann für den Emulator bereit. Mit dem Emulator können Sie Ihren Dienst anzeigen, wenn er in der lokalen Umgebung ausgeführt wird. Sie können die vollständige Version oder die Expressversion des Emulators ausführen. (Beginnend mit Azure 2.3 ist die Expressversion des Emulators die Standardversion.) Siehe Verwenden von Emulator Express zum lokalen Ausführen und Debuggen eines Cloud-Diensts.

  1. Wählen Sie auf der Menüleiste Debuggen, Debuggen starten aus, um Ihr Azure-Cloud-Dienstprojekt auszuführen. Als Alternative können Sie F5 drücken.

    Sie sehen eine Meldung, dass der Serveremulator gestartet wird. Wenn der Emulator gestartet wird, wird dies im Taskleistensymbol bestätigt.

    Azure-Emulator in der Taskleiste
  2. Klicken Sie auf der Menüleiste des Azure-Serveremulators auf Debuggen>Debuggen.

  3. Zeigen Sie die Benutzeroberfläche des Serveremulators an, indem Sie im Infobereich das Kontextmenü für das Azure-Symbol öffnen und dann auf Serveremulator-Benutzeroberfläche anzeigen klicken.

    Im linken Bereich der Benutzeroberfläche werden die Dienste angezeigt, die zurzeit im Serveremulator bereitgestellt sind, sowie die Rolleninstanzen, die in jedem Dienst ausgeführt werden. Sie können den Dienst oder die Rollen auswählen, um Lebenszyklus, Protokollierung und Diagnoseinformationen im rechten Bereich anzuzeigen. Wenn Sie den Fokus auf den oberen Rand eines enthaltenen Fensters richten, wird es auf die volle Größe des rechten Bereichs erweitert.

  4. Duchlaufen Sie Ihre Anwendung schrittweise, indem Sie auf die Befehle im Menü Debuggen klicken und Haltepunkte in Ihrem Code festlegen.

    Wenn Sie die Anwendung im Debugger schrittweise durchlaufen, werden die Bereiche mit dem aktuellen Status der Anwendung aktualisiert. Wenn Sie das Debuggen beenden, wird die Anwendungsbereitstellung gelöscht.

    Wenn die Anwendung eine Webrolle einschließt und die Eigenschaft Startaktion für das Starten des Webbrowsers festgelegt ist, startet Visual Studio die Webanwendung im Browser.

    Wenn Sie die Anzahl der Instanzen einer Rolle in der Dienstkonfiguration ändern, müssen Sie Ihren Cloud-Dienst beenden und das Debuggen neu starten, damit Sie diese neuen Instanzen der Rolle der debuggen können.

    noteHinweis
    Wenn Sie die Ausführung oder das Debuggen des Diensts beenden, werden der lokale Serveremulator und der Speicheremulator nicht beendet. Sie müssen explizit im Infobereich beendet werden.

Wenn Sie einen Cloud-Dienst von einem Remotecomputer aus debuggen möchten, müssen Sie diese Funktion ausdrücklich bei der Bereitstellung Ihres Diensts aktivieren, damit die erforderlichen Dienste (z. B. msvsmon.exe) auf den virtuellen Computern installiert werden, die Ihre Rolleninstanzen ausführen. Wenn Sie Remotedebuggen beim Veröffentlichen des Diensts nicht aktiviert haben, müssen Sie den Dienst mit aktivierter Remotedebugfunktion erneut veröffentlichen.

Wenn Sie Remotedebuggen für einen Cloud-Dienst aktivieren, erfolgt keine Leistungsverschlechterung, und es fallen keine zusätzlichen Kosten an. Sie sollten Remotedebuggen nicht für einen Produktionsdienst verwenden, weil sich dies auf Clients. die den Dienst nutzen, negativ auswirken kann.

noteHinweis
Bei der Veröffentlichung eines Cloud-Diensts aus Visual Studio können Sie IntelliTrace für alle Rollen in diesem Dienst aktivieren, die .NET Framework 4 oder .NET Framework 4.5 als Zielversion verwenden. Mithilfe von IntelliTrace können Sie Ereignisse untersuchen, die in einer Rolleninstanz in der Vergangenheit aufgetreten sind, und den Kontext zu diesem Zeitpunkt reproduzieren. Weitere Informationen finden sie unter Debuggen eines veröffentlichten Cloud-Diensts mit IntelliTrace und Visual Studio und Debuggen mit IntelliTrace.

  1. Öffnen Sie das Kontextmenü für das Azure-Projekt, und klicken Sie dann auf Veröffentlichen.

  2. Wählen Sie die Stagingumgebung und die Debugkonfiguration aus.

    Dies ist nur eine Empfehlung. Sie können optional Ihre Testumgebungen in einer Produktionsumgebung ausführen. Es kann sich jedoch negativ auf Benutzer auswirken, wenn Sie Remotedebuggen für die Produktionsumgebung aktivieren. Sie können die Releasekonfiguration auswählen, die Debugkonfiguration vereinfacht das Debuggen jedoch.

    Auswählen der Debug-Konfiguration
  3. Führen Sie die üblichen Schritte aus, aktivieren Sie jedoch das letzte Kontrollkästchen auf der Registerkarte Erweiterte Einstellungen.

    Debug-Konfiguration

  1. Öffnen Sie Server-Explorer, und erweitern Sie dann den Knoten für Ihren Cloud-Dienst.

  2. Öffnen Sie das Kontextmenü für die Rolle oder Rolleninstanz, an die angefügt werden soll, und klicken Sie dann auf Debugger anfügen.

    Anfügen des Debuggers

    Wenn Sie eine Rolle debuggen, wird der Visual Studio-Debugger an jede Instanz dieser Rolle angefügt. Der Debugger hält an einem Haltepunkt für die erste Rolleninstanz an, die diese Codezeile ausführt, und erfüllt alle Bedingungen dieses Haltepunkts. Wenn Sie eine Instanz debuggen, wird der Debugger nur an diese Instanz angefügt. Er hält dann nur an einem Haltepunkt an, wenn diese bestimmte Instanz diese Codezeile ausführt und die Bedingungen des Haltepunkts erfüllt.

  3. Nachdem der Debugger an eine Instanz angefügt wurde, führen Sie den Debugvorgang wie üblich aus.

    Dialogfeld "Codetyp auswählen"

    Der Debugger wird automatisch an den entsprechenden Hostprozess für Ihre Rolle angefügt. Abhängig vom Typ der Rolle wird der Debugger an w3wp.exe, WaWorkerHost.exe oder WaIISHost.exeangefügt. Wenn Sie den Prozess überprüfen möchten, an den der Debugger angefügt wird, erweitern Sie den Instanzknoten in Server-Explorer. Weitere Informationen zu den Azure-Prozessen finden Sie unter Azure-Rollenarchitektur.

  4. Öffnen Sie zum Identifizieren der Prozesse, an die der Debugger angefügt ist, das Dialogfeld Prozesse, indem Sie Debuggen, Windows, Prozesse in der Menüleiste auswählen. (Tastatur: STRG+ALT+Z)

    Debuggen von Prozessen

    Wenn Sie einen bestimmten Prozess trennen möchten, öffnen Sie sein Kontextmenü, und klicken Sie dann auf Prozess abtrennen. Wenn Sie den Instanzknoten in Server-Explorer ermitteln möchten, suchen Sie nach dem Prozess, öffnen Sie sein Kontextmenü, und klicken Sie dann auf Prozess abtrennen.

WarningWarnung
Vermeiden Sie beim Remotedebuggen lange Unterbrechungen an Haltepunkten. Azure geht bei einem Prozess, der länger als einige Minuten angehalten wird, davon aus, dass er nicht mehr reagiert, und sendet keinen weiteren Datenverkehr an diese Instanz. Wenn die Unterbrechung zu lang ist, wird msvsmon.exe vom Prozess getrennt.

Wenn Sie den Debugger von allen Prozessen in Ihrer Instanz oder Rolle trennen möchten, öffnen Sie das Kontextmenü für die Rolle oder Instanz, die Sie debuggen, und klicken Sie dann auf Debugger abtrennen.

Für Azure SDK 4.3 gelten für Remotedebuggen die folgenden Einschränkungen.

  • Wenn Remotedebuggen aktiviert ist, können Sie keinen Cloud-Dienst veröffentlichen, in dem eine beliebige Rolle mehr als 25 Instanzen besitzt.

  • Der Debugger verwendetd ie Ports 30400 bis 30424 und 31400 bis 31424. Wenn Sie versuchen, einen dieser Ports zu verwenden, können Sie Ihren Dienst nicht veröffentlichen, und eine der folgenden Fehlermeldungen wird im Aktivitätsprotokoll für Azure angezeigt:

    • Fehler beim Überprüfen der CSCFG-Datei anhand der CSDEF-Datei. Der reservierte Portbereich "Bereich" für den Endpunkt "Microsoft.WindowsAzure.Plugins.RemoteDebugger.Connector" der Rolle "Rolle" überlappt mit einem bereits definierten Port oder Bereich.

    • Fehler bei der Zuordnung. Versuchen Sie es später erneut, versuchen Sie, die Größe des virtuellen Computers oder die Anzahl der Rolleninstanzen zu verringern, oder versuchen Sie die Bereitstellung in einer anderen Region.

Sie können Programme, die auf virtuellen Azure-Computern ausgeführt werden, mithilfe von Server-Explorer in Visual Studio debuggen. Wenn Sie Remotedebuen für einen virtuellen Azure-Computer aktivieren, installiert Azure die Remotedebugerweiterung auf dem virtuellen Computer. Anschließend können Sie Prozesse auf dem virtuellen Computer anfügen und wie üblich debuggen.

  1. Erweitern Sie in Server-Explorer den Knoten Virtuelle Computer, und wählen Sie dann den Knoten des virtuellen Computers aus, den Sie debuggen möchten.

  2. Öffnen Sie das Kontextmenü, und klicken Sie dann auf Debugging aktivieren.

    Befehl "Debuggen aktivieren" eines virtuellen Computers

    Wenn Sie gefragt werden, ob Sie sicher sind, dass Debuggen auf dem virtuellen Computer aktiviert werden soll, klicken Sie auf Ja.

    Azure installiert die Remotedebugerweiterung auf dem virtuellen Computer, um Debuggen zu aktivieren.

    Azure-Aktivitätsprotokoll
  3. Nachdem die Installation der Remotedebugerweiterung abgeschlossen ist, öffnen Sie das Kontextmenü des virtuellen Computers und klicken dann auf Debugger anfügen.

    Befehl "Debugger anfügen"

    Azure ruft eine Liste der Prozesse auf dem virtuellen Computer ab und zeigt diese im Dialogfeld An den Prozess anhängen an.

  4. Klicken Sie im Dialogfeld An den Prozess anhängen auf Auswählen, um die Ergebnisliste so einzuschränken, dass nur die Codetypen angezeigt werden, die Sie debuggen möchten. Sie können verwalteten Code, systemeigenen Code und beides jeweils in 32 oder 64 Bit debuggen.

    Dialogfeld "Codetyp auswählen"
  5. Klicken Sie auf die Prozesse, die Sie auf dem virtuellen Computer debuggen möchten, und klicken Sie dann auf Anfügen. Sie können z. B. den Prozess w3wp.exe auswählen, wenn Sie eine Web-App auf dem virtuellen Computer debuggen möchten. Weitere Informationen finden Sie unter Debuggen mindestens eines Prozesses in Visual Studio und Azure-Rollenarchitektur.

Bevor Sie Ihr Azure-Projekt veröffentlichen, kann es sinnvoll sein, dieses in einer eigenständigen Umgebung zu testen, die Debug- und Testszenarien unterstützt, und in der Test- und Überwachungsprogramme installiert werden können. Eine Möglichkeit besteht im Remotedebuggen Ihrer App auf einem virtuellen Computer.

Visual Studio ASP.NET-Projekte bieten eine Option zum Erstellen eines praktischen virtuellen Computers, den Sie für das Testen der App verwenden können. Der virtuelle Computer umfasst häufig benötigte Endpunkte, z. B. PowerShell, Remotedesktop und WebDeploy.

  1. Erstellen Sie in Visual Studio eine neue ASP.NET-Webanwendung.

  2. Wählen Sie im Dialogfeld Neues ASP.NET-Projekt im Abschnitt Azure die Option Virtueller Computer aus dem Dropdownlistenfeld aus. Lassen Sie das Kontrollkästchen Remoteressourcen erstellen aktiviert. Klicken Sie auf OK, um den Vorgang fortzusetzen.

    Dialogfeld "ASP.NET-Webprojekt erstellen"

    Das Dialogfeld Virtuellen Computer in Azure erstellen wird angezeigt.

    noteHinweis
    Sie werden aufgefordert, sich an Ihrem Azure-Konto anzumelden, wenn Sie noch nicht angemeldet sind.

  3. Wählen Sie die verschiedenen Einstellungen für den virtuellen Computer aus, und klicken Sie dann auf OK. Weitere Informationen finden Sie unter Virtuelle Computer.

    Dialogfeld "Virtuellen Computer in Azure erstellen"
    noteHinweis
    Der Name, den Sie als DNS-Name eingeben, wird zum Namen des virtuellen Computers.

    Azure erstellt den virtuellen Computer und stellt dann die Endpunkte bereit und konfiguriert diese, z. B. Remotedesktop und Web Deploy.

  4. Nachdem der virtuelle Computer vollständig konfiguriert wurde, wählen Sie den Knoten des virtuellen Computers in Server-Explorer aus.

  5. Öffnen Sie das Kontextmenü, und klicken Sie dann auf Debugging aktivieren.

    Befehl "Debuggen aktivieren" eines virtuellen Computers

    Wenn Sie gefragt werden, ob Sie sicher sind, dass Debuggen auf dem virtuellen Computer aktiviert werden soll, klicken Sie auf Ja.

    Azure installiert die Remotedebugerweiterung auf dem virtuellen Computer, um Debuggen zu aktivieren.

    Azure-Aktivitätsprotokoll
  6. Veröffentlichen Sie Ihr Projekt wie unter Vorgehensweise: Bereitstellen eines Webprojekts mithilfe von Veröffentlichung mit einem Klick in Visual Studio beschrieben. Da Sie Debugaufgaben auf dem virtuellen Computer ausführen möchten, wählen Sie auf der Seite Einstellungen des Webveröffentlichungs-Assistenten die Option Debuggen als Konfiguration aus. Auf diese Weise wird sichergestellt, dass Codesymbole beim Debuggen verfügbar sind.

    Veröffentlichungseinstellungen
  7. Wählen Sie unter Dateiveröffentlichungsoptionen die Option Zusätzliche Dateien am Ziel entfernen aus, wenn das Projekt zu einem früheren Zeitpunkt bereits bereitgestellt wurde.

  8. Nachdem das Projekt veröffentlicht wurde, klicken Sie im Kontextmenü des virtuellen Computers in Server-Explorer auf Debugger anfügen.

    Befehl "Debugger anfügen"

    Azure ruft eine Liste der Prozesse auf dem virtuellen Computer ab und zeigt diese im Dialogfeld An den Prozess anhängen an.

  9. Klicken Sie im Dialogfeld An den Prozess anhängen auf Auswählen, um die Ergebnisliste so einzuschränken, dass nur die Codetypen angezeigt werden, die Sie debuggen möchten. Sie können verwalteten Code, systemeigenen Code und beides jeweils in 32 oder 64 Bit debuggen.

    Dialogfeld "Codetyp auswählen"
  10. Klicken Sie auf die Prozesse, die Sie auf dem virtuellen Computer debuggen möchten, und klicken Sie dann auf Anfügen. Sie können z. B. den Prozess w3wp.exe auswählen, wenn Sie eine Web-App auf dem virtuellen Computer debuggen möchten. Weitere Informationen finden Sie unter Debuggen mindestens eines Prozesses in Visual Studio.

Siehe auch

Anzeigen:
© 2015 Microsoft