Ladění aplikace Service Fabric pomocí Visual Studia
Ladění místní aplikace Service Fabric
Můžete ušetřit čas a peníze nasazením a laděním aplikace Azure Service Fabric v clusteru pro vývoj místních počítačů. Sady Visual Studio 2019 nebo 2015 mohou nasadit aplikaci do místního clusteru a automaticky připojit ladicí program ke všem instancím aplikace. Pro připojení ladicího programu je třeba spustit aplikaci Visual Studio jako správce.
Spusťte místní vývojový cluster podle kroků uvedených v části Nastavení vývojového prostředí Service Fabric.
Stiskněte klávesu F5 nebo klikněte na ladění > Spustit ladění.

Nastavte zarážky v kódu a proveďte krokování aplikace kliknutím na příkazy v nabídce ladění .
Poznámka
Visual Studio se připojí ke všem instancím aplikace. Zatímco probíhajíte prostřednictvím kódu, zarážky mohou dosáhnout více procesů, které mají za následek souběžné relace. Zkuste zakázat zarážky po jejich dosažení tím, že každou zarážku nastavíte na ID vlákna nebo pomocí diagnostických událostí.
Okno diagnostické události se automaticky otevře, abyste mohli zobrazit diagnostické události v reálném čase.

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 vyberte Zobrazit trasování streamování.

Pokud chcete filtrovat trasování na určitou službu nebo aplikaci, povolte trasování streamování na konkrétní službě nebo aplikaci.
Diagnostické události lze zobrazit v automaticky generovaném souboru ServiceEventSource. cs a jsou volány z kódu aplikace.
ServiceEventSource.Current.ServiceMessage(this, "My ServiceMessage with a parameter {0}", result.Value.ToString());Okno diagnostické události podporuje filtrování, pozastavování a kontrolu událostí v reálném čase. Filtr je jednoduché hledání řetězců zprávy události, včetně jejího obsahu.

Služby ladění jsou jako ladění jakékoli jiné aplikace. V sadě Visual Studio budete normálně nastavovat zarážky pro snadné ladění. I když jsou spolehlivé kolekce replikovány napříč více uzly, stále implementují rozhraní IEnumerable. Tato implementace znamená, že při ladění můžete použít zobrazení výsledků v aplikaci Visual Studio, abyste viděli, co jste uložili v rámci. Provedete to tak, že nastavíte zarážku kdekoli v kódu.

Spuštění skriptu jako součást ladění
V některých scénářích může být nutné spustit skript jako součást spuštění relace ladění (např. Pokud nepoužíváte výchozí služby).
V aplikaci Visual Studio můžete přidat soubor s názvem Start-Service.ps1 ve složce Scripts projektu aplikace Service Fabric (. sfproj). Tento skript bude vyvolán po vytvoření aplikace v místním clusteru.
Ladění aplikace vzdálené Service Fabric
Pokud vaše aplikace Service Fabric běží na 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.
Upozornění
Vzdálené ladění je určeno pro scénáře vývoje a testování a nepoužívá se v produkčních prostředích z důvodu dopadu na běžící aplikace.
V Průzkumníku cloudu přejděte do clusteru. Klikněte pravým tlačítkem a vyberte Povolit ladění .

Tato akce zahájí proces povolení rozšíření vzdáleného ladění na uzlech clusteru a požadované konfigurace sítě.
Klikněte pravým tlačítkem na uzel clusteru v Průzkumníku cloudu a vyberte připojit ladicí program .

V dialogovém okně připojit k procesu vyberte proces, který chcete ladit, a klikněte na tlačítko připojit .

Název procesu, ke kterému se chcete připojit, se rovná názvu vašeho názvu sestavení projektu služby.
Ladicí program se připojí ke všem uzlům, které proces spouští.
V případě, že ladíte bezstavovou službu, jsou všechny instance služby na všech uzlech součástí relace ladění.
Pokud ladíte stavovou službu, bude aktivní pouze primární replika jakéhokoli oddílu, a proto bude zachycena ladicím programem. Pokud se primární replika přesune během relace ladění, bude zpracování této repliky stále součástí ladicí relace.
Chcete-li zachytit pouze relevantní oddíly nebo instance dané služby, můžete použít podmíněné zarážky pouze k přerušení konkrétního oddílu nebo instance.

Poznámka
V současné době nepodporujeme ladění Service Fabricho clusteru s více instancemi stejného názvu spustitelného souboru služby.
Po dokončení ladění aplikace můžete rozšíření vzdáleného ladění zakázat kliknutím pravým tlačítkem myši na cluster v Průzkumníku cloudu a zvolením možnosti Zakázat ladění .

Streamování trasování ze vzdáleného uzlu clusteru
Je také možné streamovat trasování přímo ze vzdáleného uzlu clusteru do sady Visual Studio. Tato funkce umožňuje streamovat události trasování ETW, které se vytvářejí na 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 jenom clustery běžící v Azure.
Upozornění
Trasování streamování je určené pro scénáře pro vývoj a testování a ne pro použití v produkčních prostředích z důvodu dopadu na běžící aplikace. V produkčním scénáři byste měli spoléhat na události předávání pomocí Azure Diagnostics.
V Průzkumníku cloudu přejděte do clusteru. Klikněte pravým tlačítkem a vyberte Povolit trasování streamování .

Tato akce zahájí proces povolení rozšíření trasování datových proudů na uzlech clusteru a také požadované konfigurace sítě.
Rozbalte prvek uzly v Průzkumníku cloudu, klikněte pravým tlačítkem na uzel, ze kterého chcete streamovat trasování, a vyberte Zobrazit trasování streamování.

Opakujte krok 2 pro libovolný počet uzlů, ze kterých chcete zobrazit trasování. Každý datový proud uzlů se zobrazí ve vyhrazeném okně.
Teď můžete vidět trasování vysílaná Service Fabric a vašimi službami. Chcete-li filtrovat události tak, aby zobrazovaly pouze konkrétní aplikaci, stačí do filtru zadat název aplikace.

Po skončení streamování trasování z clusteru můžete zakázat trasování vzdáleného streamování kliknutím pravým tlačítkem myši na cluster v Průzkumníku cloudu a výběrem možnosti zakázat trasování streamování .
