Freigeben über


Tutorial: Debuggen einer Service Fabric Mesh-Anwendung, die in Ihrem lokalen Entwicklungscluster ausgeführt wird

Wichtig

Die Vorschauversion von Azure Service Fabric Mesh wurde eingestellt. Neue Bereitstellungen über die Service Fabric Mesh-API werden nicht mehr gestattet. Unterstützung für vorhandene Bereitstellungen wird bis zum 28. April 2021 fortgesetzt.

Einzelheiten finden Sie unter Ausmusterung der Vorschauversion von Azure Service Fabric Mesh.

Dieses Tutorial ist der zweite Teil einer Reihe und zeigt, wie Sie eine Azure Service Fabric Mesh-App in Ihrem lokalen Entwicklungscluster erstellen und debuggen.

In diesem Tutorial lernen Sie Folgendes:

  • Abläufe beim Erstellen einer Azure Service Fabric Mesh-Anwendung
  • Festlegen eines Breakpoints, um einen Aufruf zwischen Diensten zu beobachten

In dieser Tutorialserie lernen Sie Folgendes:

Service Fabric Mesh befindet sich derzeit in der Vorschauphase. Vorschauversionen werden Ihnen zur Verfügung gestellt, wenn Sie die zusätzlichen Nutzungsbedingungen akzeptieren. Einige Aspekte dieses Features werden bis zur allgemeinen Verfügbarkeit unter Umständen noch geändert.

Voraussetzungen

Bevor Sie mit diesem Tutorial beginnen können, müssen Sie Folgendes tun:

  • Falls Sie über kein Azure-Abonnement verfügen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

  • Stellen Sie sicher, dass Sie Ihre Entwicklungsumgebung eingerichtet haben. Dies umfasst auch das Installieren der Service Fabric-Laufzeit, des SDK und die Installation von Docker sowie Visual Studio 2017.

Herunterladen der Aufgabenbeispielanwendung

Falls Sie die Aufgabenbeispielanwendung aus Teil 1 dieser Tutorialreihe nicht erstellt haben, können Sie sie herunterladen. Führen Sie in einem Befehlsfenster den folgenden Befehl aus, um das Beispiel-App-Repository auf Ihren lokalen Computer zu klonen.

git clone https://github.com/azure-samples/service-fabric-mesh

Die Anwendung befindet sich im Verzeichnis „src\todolistapp“.

Erstellen und Debuggen in Ihrem lokalen Cluster

Beim Laden Ihres Projekts wird automatisch ein Docker-Image erstellt und in Ihrem lokalen Cluster bereitgestellt. Dieser Vorgang kann etwas dauern. Den Fortschritt können Sie in Visual Studio im Bereich Ausgabe überwachen. Wählen Sie hierzu in der Dropdownliste Ausgabe anzeigen von: die Option Service Fabric-Tools aus.

Drücken SieF5, um Ihren Dienst zu kompilieren und lokal auszuführen. Wenn das Projekt lokal ausgeführt und debuggt wird, werden von Visual Studio folgende Schritte ausgeführt:

  • Sicherstellen, dass Docker für Windows ausgeführt wird und Windows als Containerbetriebssystem festgelegt ist
  • Herunterladen ggf. fehlender Docker-Basisimages (kann etwas dauern)
  • Erstellen (oder erneutes Erstellen) des Docker-Images zum Hosten Ihres Codeprojekts
  • Bereitstellen und Ausführen des Containers im lokalen Service Fabric-Entwicklungscluster
  • Ausführen Ihrer Dienste und Anhalten an allen ggf. festgelegten Breakpoints

Wenn die lokale Bereitstellung fertig gestellt wurde und Ihre App von Visual Studio ausgeführt wird, öffnet sich ein Browserfenster mit einer standardmäßigen Beispielwebseite.

Tipps zum Debuggen

Befolgen Sie die Anweisungen im Artikel zum Optimieren der Visual Studio-Leistung, um den ersten Debuglauf (F5) erheblich zu beschleunigen.

Derzeit besteht ein Problem, das bewirkt, dass mit dem Aufruf von using (HttpResponseMessage response = client.GetAsync("").GetAwaiter().GetResult()) keine Verbindung mit dem Dienst hergestellt werden kann. Dies kann immer passieren, wenn sich Ihre Host-IP-Adresse ändert. Problembehebung:

  1. Entfernen Sie die App aus dem lokalen Cluster (in Visual Studio, Build>Projektmappe bereinigen).
  2. Wählen Sie im Service Fabric-Managers für lokale Cluster die Option Lokalen Cluster beenden und dann Lokalen Cluster starten.
  3. Stellen Sie die App erneut bereit (in Visual Studio, F5).

Sollte der Fehler No Service Fabric local cluster is running (Es wird kein lokaler Service Fabric-Cluster ausgeführt.) auftreten, vergewissern Sie sich, dass der LCM (Service Fabric Local Cluster Manager) ausgeführt wird, klicken Sie auf der Taskleiste mit der rechten Maustaste auf das LCM-Symbol, und klicken Sie anschließend auf Start Local Cluster (Lokalen Cluster starten). Kehren Sie nach dem Start des Clusters zu Visual Studio zurück, und drücken SieF5.

Sollte beim Start der App ein Fehler vom Typ 404 auftreten, sind möglicherweise die Umgebungsvariablen in service.yaml nicht korrekt. Vergewissern Sie sich, dass ApiHostPort und ToDoServiceName ordnungsgemäß festgelegt sind, wie unter Tutorial: Erstellen, Debuggen und Bereitstellen einer Webanwendung mit mehreren Diensten in Service Fabric Mesh beschrieben.

Vergewissern Sie sich im Falle von Buildfehlern in service.yaml, dass zum Einrücken der Zeilen keine Tabulatoren, sondern Leerzeichen verwendet wurden. Darüber hinaus müssen Sie die App vorerst mit dem englischen Gebietsschema erstellen.

Debuggen in Visual Studio

Beim Debuggen einer Service Fabric Mesh-Anwendung in Visual Studio verwenden Sie einen lokalen Service Fabric-Entwicklungscluster. Debuggen Sie die Methode „OnGet()“, um zu sehen, wie Aufgaben aus dem Back-End-Dienst abgerufen werden.

  1. Navigieren Sie im Projekt WebFrontEnd zu Seiten>Index.cshtml>Index.cshtml.cs, und legen Sie einen Breakpoint in der Methode OnGet (Zeile 17) fest.
  2. Öffnen Sie im Projekt ToDoService die Datei TodoController.cs, und legen Sie einen Breakpoint in der Methode Get (Zeile 15) fest.
  3. Aktualisieren Sie die Anzeige im Browser. Sie haben den Haltepunkt in der Web-Front-End-Methode OnGet() getroffen. Anhand der Variablen backendUrl sehen Sie, wie die Umgebungsvariablen, die Sie in der Datei service.yaml definiert haben, zu der URL kombiniert werden, die zum Herstellen der Verbindung mit dem Back-End-Dienst verwendet wird.
  4. Überspringen Sie durch Drücken von F10 den Aufruf client.GetAsync(backendUrl).GetAwaiter().GetResult()), um zum Controller-Breakpoint Get() zu gelangen. In dieser Methode sehen Sie, wie die Liste mit den Aufgaben aus der In-Memory-Liste abgerufen wird.
  5. Wenn Sie fertig sind, drücken SieUMSCHALT+F5, um das Debuggen Ihres Projekts in Visual Studio zu beenden.

Nächste Schritte

In diesem Teil des Tutorials haben Sie Folgendes gelernt:

  • Abläufe beim Erstellen einer Azure Service Fabric Mesh-Anwendung
  • Festlegen eines Breakpoints, um einen Aufruf zwischen Diensten zu beobachten

Fahren Sie mit dem nächsten Tutorial fort: