Sdílet prostřednictvím


Ladění aplikace Service Fabric pomocí Visual Studia

Ladění místní aplikace Service Fabric

Důležité

Vzdálené ladění se ve VS 2022 nepodporuje.

Můžete ušetřit čas a peníze nasazením a laděním aplikace Azure Service Fabric v místním clusteru pro vývoj počítačů. Visual Studio 2019 nebo 2015 může nasadit aplikaci do místního clusteru a automaticky připojit ladicí program ke všem instancím aplikace. Visual Studio musí být spuštěno jako správce pro připojení ladicího programu.

  1. Spusťte místní vývojový cluster podle kroků v nastavení vývojového prostředí Service Fabric.

  2. Stiskněte klávesu F5 nebo klepněte na tlačítko Spustit>ladění.

    Snímek obrazovky s nabídkou Ladění

  3. Nastavte zarážky v kódu a krokujte aplikaci kliknutím na příkazy v nabídce Ladit .

    Poznámka:

    Visual Studio se připojí ke všem instancím aplikace. Při procházení kódu se zarážky můžou dostat do několika procesů, které vedou ke souběžným relacím. Zkuste zakázat zarážky po jejich dosažení tím, že každou zarážku zarážku podmíníte na ID vlákna nebo pomocí diagnostických událostí.

  4. Otevře se okno Diagnostické události automaticky, abyste mohli diagnostické události zobrazit v reálném čase.

    Zobrazení diagnostických událostí v reálném čase

  5. V Průzkumníku cloudu můžete také otevřít okno Diagnostické události . V části Service Fabric klikněte pravým tlačítkem na libovolný uzel a zvolte Zobrazit trasování streamování.

    Otevření okna diagnostických událostí

    Pokud chcete trasování filtrovat na konkrétní službu nebo aplikaci, povolte v dané konkrétní službě nebo aplikaci trasování streamování.

  6. Diagnostické události se dají zobrazit v automaticky generovaném souboru ServiceEventSource.cs a volají se z kódu aplikace.

    ServiceEventSource.Current.ServiceMessage(this, "My ServiceMessage with a parameter {0}", result.Value.ToString());
    
  7. Okno Diagnostické události podporuje filtrování, pozastavení a kontrolu událostí v reálném čase. Filtr je jednoduché prohledávání zprávy události, včetně jejího obsahu.

    Filtrování, pozastavení a obnovení nebo kontrola událostí v reálném čase

  8. Ladicí služby jsou podobné ladění jakékoli jiné aplikace. Zarážky obvykle nastavíte prostřednictvím sady Visual Studio pro snadné ladění. I když se spolehlivé kolekce replikují napříč několika uzly, stále implementují IEnumerable. Tato implementace znamená, že při ladění můžete pomocí zobrazení výsledků v sadě Visual Studio zjistit, co jste uložili. Uděláte to tak, že nastavíte zarážku kdekoli v kódu.

    Spuštění ladění aplikace

Spuštění skriptu v rámci ladění

V určitých scénářích může být nutné spustit skript jako součást spuštění ladicí relace (např. při použití výchozích služeb).

V sadě Visual Studio můžete přidat soubor s názvem Start-Service.ps1 do složky Skripty projektu aplikace Service Fabric (.sfproj). Tento skript se vyvolá po vytvoření aplikace v místním clusteru.

Ladění vzdálené aplikace Service Fabric

Pokud jsou vaše aplikace Service Fabric spuštěné v clusteru Service Fabric v Azure, můžete tyto aplikace vzdáleně ladit přímo ze sady Visual Studio.

Poznámka:

Tato funkce vyžaduje sadu Service Fabric SDK 2.0 a Sadu Azure SDK pro .NET 2.9.

Upozorňující

Vzdálené ladění je určené pro scénáře vývoje a testování, které se nemají používat v produkčních prostředích, protože to má vliv na spuštěné aplikace.

  1. Přejděte do clusteru v Průzkumníku cloudu. Klikněte pravým tlačítkem myši a zvolte Povolit ladění.

    Povolení vzdáleného ladění

    Tato akce zahájí proces povolení rozšíření vzdáleného ladění na uzlech clusteru a požadované konfigurace sítě.

  2. Klikněte pravým tlačítkem na uzel clusteru v Průzkumníku cloudu a zvolte Připojit ladicí program.

    Připojení ladicího programu

  3. V dialogovém okně Připojit k procesu zvolte proces, který chcete ladit, a klikněte na Připojit.

    Volba procesu

    Název procesu, ke který se chcete připojit, se rovná názvu sestavení projektu služby.

    Ladicí program se připojí ke všem uzlům, na kterých proces běží.

    • V případě, že ladíte bezstavovou službu, jsou všechny instance služby na všech uzlech součástí ladicí relace.

    • Pokud ladíte stavovou službu, bude aktivní pouze primární replika libovolného oddílu, a proto ladicí program zachytí. Pokud se primární replika přesune během ladicí relace, bude zpracování této repliky stále součástí ladicí relace.

    • Pokud chcete zachytit jenom relevantní oddíly nebo instance dané služby, můžete pomocí podmíněných zarážek přerušit jenom konkrétní oddíl nebo instanci.

      Podmíněná zarážka

      Poznámka:

      V současné době nepodporujeme ladění clusteru Service Fabric s více instancemi stejného názvu spustitelného souboru služby.

  4. Po dokončení ladění aplikace můžete rozšíření vzdáleného ladění zakázat tak, že kliknete pravým tlačítkem na cluster v Průzkumníku cloudu a zvolíte Zakázat ladění.

    Zakázání vzdáleného ladění

Streamování trasování ze vzdáleného uzlu clusteru

Trasování můžete streamovat také přímo z uzlu vzdáleného clusteru do sady Visual Studio. Tato funkce umožňuje streamovat události trasování událostí trasování událostí Trasování událostí Pro Windows vytvořených v uzlu clusteru Service Fabric.

Poznámka:

Tato funkce vyžaduje sadu Service Fabric SDK 2.0 a Sadu Azure SDK pro .NET 2.9. Tato funkce podporuje pouze clustery spuštěné v Azure.

Upozorňující

Trasování streamování je určené pro scénáře vývoje/testování, které se nemají používat v produkčních prostředích, protože to má vliv na spuštěné aplikace. V produkčním scénáři byste měli spoléhat na předávání událostí pomocí azure Diagnostics.

  1. Přejděte do clusteru v Průzkumníku cloudu. Klikněte pravým tlačítkem myši a zvolte Povolit trasování streamování.

    Povolení trasování vzdáleného streamování

    Tato akce zahájí proces povolení rozšíření trasování streamování na uzlech clusteru a také požadované konfigurace sítě.

  2. Rozbalte prvek Nodes v Průzkumníku cloudu, klikněte pravým tlačítkem myši na uzel, ze kterého chcete streamovat trasování, a zvolte Zobrazit trasování streamování.

    Zobrazení trasování vzdáleného streamování

    Opakujte krok 2 pro libovolný počet uzlů, ze kterého chcete zobrazit trasování. Každý datový proud uzlů se zobrazí v vyhrazeném okně.

    Teď můžete zobrazit trasování vygenerované Service Fabric a vašimi službami. Pokud chcete filtrovat události tak, aby zobrazovaly jenom konkrétní aplikaci, jednoduše zadejte název aplikace ve filtru.

    Zobrazení trasování streamování

  3. Po dokončení trasování streamování z clusteru můžete vzdálené trasování streamování zakázat tak, že kliknete pravým tlačítkem na cluster v Průzkumníku cloudu a zvolíte Zakázat trasování streamování.

    Zakázání trasování vzdáleného streamování

Další kroky