Megosztás a következőn keresztül:


Service Fabric-alkalmazás hibakeresése a Visual Studióval

Helyi Service Fabric-alkalmazás hibakeresése

Fontos

A távoli hibakeresés nem támogatott a VS 2022-ben

Időt és pénzt takaríthat meg, ha üzembe helyezi és hibakereséssel telepíti az Azure Service Fabric-alkalmazást egy helyi számítógép-fejlesztési fürtben. A Visual Studio 2019 vagy 2015 üzembe helyezheti az alkalmazást a helyi fürtön, és automatikusan csatlakoztathatja a hibakeresőt az alkalmazás összes példányához. A hibakereső csatlakoztatásához a Visual Studiót rendszergazdaként kell futtatni.

  1. Hozzon létre egy helyi fejlesztési fürtöt a Service Fabric-fejlesztési környezet beállítása című cikk lépéseit követve.

  2. Nyomja le az F5 billentyűt, vagy kattintson a Hibakeresés>indítása hibakeresés gombra.

    Képernyőkép a Hibakeresés menüről.

  3. Állítson be töréspontokat a kódban, és haladjon végig az alkalmazáson a Hibakeresés menü parancsaira kattintva.

    Megjegyzés

    A Visual Studio csatolja az alkalmazás összes példányát. Miközben lépeget a kódon, a töréspontokat több folyamat is érintheti, ami egyidejű munkameneteket eredményez. Próbálja meg letiltani a töréspontokat a találatok után, ha minden töréspontot feltételessé tesz a szálazonosítótól vagy diagnosztikai események használatával.

  4. A Diagnosztikai események ablak automatikusan megnyílik, így valós időben tekintheti meg a diagnosztikai eseményeket.

    Diagnosztikai események valós idejű megtekintése

  5. A Diagnosztikai események ablakot a Cloud Explorerben is megnyithatja. A Service Fabric területen kattintson a jobb gombbal bármelyik csomópontra, és válassza a Streamelési nyomkövetések megtekintése lehetőséget.

    A diagnosztikai események ablakának megnyitása

    Ha egy adott szolgáltatásra vagy alkalmazásra szeretné szűrni a nyomkövetéseket, engedélyezze a streamelési nyomkövetéseket az adott szolgáltatáson vagy alkalmazáson.

  6. A diagnosztikai események az automatikusan létrehozott ServiceEventSource.cs fájlban láthatók, és alkalmazáskódból hívhatók meg.

    ServiceEventSource.Current.ServiceMessage(this, "My ServiceMessage with a parameter {0}", result.Value.ToString());
    
  7. A Diagnosztikai események ablak valós időben támogatja az események szűrését, szüneteltetését és vizsgálatát. A szűrő az eseményüzenet egyszerű sztringkeresése, beleértve annak tartalmát is.

    Események valós idejű szűrése, szüneteltetése és folytatása vagy vizsgálata

  8. A szolgáltatások hibakeresése olyan, mint bármely más alkalmazás hibakeresése. A hibakeresés megkönnyítése érdekében általában töréspontokat fog beállítani a Visual Studióban. Annak ellenére, hogy a Reliable Collections több csomóponton replikálódik, továbbra is IEnumerable-t implementálnak. Ez az implementáció azt jelenti, hogy hibakeresés közben használhatja az Eredmények nézetet a Visual Studióban, hogy lássa, mit tárolt benne. Ehhez állítson be egy töréspontot bárhol a kódban.

    Alkalmazás hibakeresésének megkezdése

Szkript futtatása hibakeresés részeként

Bizonyos esetekben szükség lehet egy szkript futtatására egy hibakeresési munkamenet indításakor (például ha nem használja az Alapértelmezett szolgáltatásokat).

A Visual Studióban hozzáadhat egy Start-Service.ps1 nevű fájlt a Service Fabric-alkalmazás projekt (.sfproj) Scripts mappájába. Ez a szkript akkor lesz meghívva, ha az alkalmazás létrejött a helyi fürtben.

Távoli Service Fabric-alkalmazás hibakeresése

Ha Service Fabric-alkalmazásai egy Service Fabric-fürtön futnak az Azure-ban, ezeket az alkalmazásokat távolról, közvetlenül a Visual Studióból végezheti el.

Figyelmeztetés

A távoli hibakeresés fejlesztési/tesztelési forgatókönyvekhez készült, és nem használható éles környezetekben a futó alkalmazásokra gyakorolt hatás miatt.

  1. Nyissa meg a fürtöt a Cloud Explorerben. Kattintson a jobb gombbal, és válassza a Hibakeresés engedélyezése lehetőséget

    Távoli hibakeresés engedélyezése

    Ez a művelet elindítja a távoli hibakeresési bővítmény engedélyezésének folyamatát a fürtcsomópontokon és a szükséges hálózati konfigurációkon.

  2. Kattintson a jobb gombbal a fürtcsomópontra a Cloud Explorerben, és válassza a Hibakereső csatolása lehetőséget

    Hibakereső csatolása

  3. A Csatolás a folyamathoz párbeszédpanelen válassza ki a hibakeresési folyamatot, majd kattintson a Csatolás gombra.

    Folyamat kiválasztása

    A csatolni kívánt folyamat neve megegyezik a szolgáltatási projekt szerelvényének nevével.

    A hibakereső a folyamatot futtató összes csomóponthoz csatlakozik.

    • Abban az esetben, ha állapot nélküli szolgáltatást keres, a szolgáltatás összes példánya az összes csomóponton a hibakeresési munkamenet része.

    • Állapotalapú szolgáltatás hibakeresése esetén csak a partíciók elsődleges replikája lesz aktív, ezért a hibakereső észleli. Ha az elsődleges replika a hibakeresési munkamenet során mozog, a replika feldolgozása továbbra is a hibakeresési munkamenet része lesz.

    • Ha csak egy adott szolgáltatás releváns partícióit vagy példányait szeretné észlelni, feltételes töréspontok használatával csak egy adott partíciót vagy példányt bonthat.

      Feltételes töréspont

      Megjegyzés

      Jelenleg nem támogatjuk egy olyan Service Fabric-fürt hibakeresését, amelynek több példánya ugyanaz a szolgáltatás végrehajtható neve.

  4. Miután befejezte az alkalmazás hibakeresését, letilthatja a távoli hibakeresési bővítményt. Ehhez kattintson a jobb gombbal a fürtre a Cloud Explorerben, és válassza a Hibakeresés letiltása lehetőséget.

    Távoli hibakeresés letiltása

Nyomkövetések streamelése távoli fürtcsomópontról

A nyomkövetéseket közvetlenül is streamelheti egy távoli fürtcsomópontról a Visual Studióba. Ezzel a funkcióval streamelheti a Service Fabric-fürtcsomóponton létrehozott ETW-nyomkövetési eseményeket.

Megjegyzés

Ehhez a funkcióhoz a Service Fabric SDK 2.0 és a .NET 2.9-hez készült Azure SDK szükséges. Ez a funkció csak az Azure-ban futó fürtöket támogatja.

Figyelmeztetés

A streamelési nyomkövetések fejlesztési/tesztelési forgatókönyvekhez készültek, és nem használhatók éles környezetekben a futó alkalmazásokra gyakorolt hatás miatt. Éles forgatókönyv esetén az események Azure Diagnostics használatával történő továbbítására kell támaszkodnia.

  1. Nyissa meg a fürtöt a Cloud Explorerben. Kattintson a jobb gombbal, és válassza a Streamelési nyomkövetések engedélyezése lehetőséget

    Távoli streamelési nyomkövetések engedélyezése

    Ez a művelet elindítja a streamelési nyomkövetési bővítmény engedélyezésének folyamatát a fürtcsomópontokon, valamint a szükséges hálózati konfigurációkat.

  2. Bontsa ki a Cloud ExplorerCsomópontok elemét, kattintson a jobb gombbal arra a csomópontra, amelyről nyomkövetéseket szeretne streamelni, és válassza a Streamelési nyomkövetések megtekintése lehetőséget.

    Távoli streamelési nyomkövetések megtekintése

    Ismételje meg a 2. lépést annyi csomópontnál, amennyiből nyomkövetést szeretne látni. Minden csomópont streamje egy dedikált ablakban jelenik meg.

    Most már láthatja a Service Fabric és a szolgáltatások által kibocsátott nyomkövetéseket. Ha az eseményeket úgy szeretné szűrni, hogy csak egy adott alkalmazást jelenítsen meg, egyszerűen írja be az alkalmazás nevét a szűrőbe.

    Streamelési nyomkövetések megtekintése

  3. Miután befejezte a nyomkövetések fürtről való streamelését, letilthatja a távoli streamelési nyomkövetéseket. Ehhez kattintson a jobb gombbal a fürtre a Cloud Explorerben, és válassza a Streamelési nyomkövetések letiltása lehetőséget.

    Távoli streamelési nyomkövetések letiltása

Következő lépések