ladění živých ASP.NET aplikací Azure pomocí Snapshot Debugger

Snapshot Debugger pořizování snímku vašich aplikací v produkčním prostředí, když se zajímá váš kód. Chcete-li ladicímu programu dát pokyn k pořízení snímku, nastavte snímkovací body a protokolovacích bodů ve svém kódu. Ladicí program vám umožní zobrazit přesně to, co se nepovedlo, aniž by to ovlivnilo provoz vaší produkční aplikace. Snapshot Debugger vám může výrazně zkrátit dobu potřebnou k vyřešení problémů, ke kterým dochází v produkčních prostředích.

Snímkovací body a protokolovacích bodů jsou podobné zarážekm, ale na rozdíl od zarážek, snímkovací body aplikaci při volání neukončí. Záznam snímku na snímkovací bod obvykle trvá 10-20 milisekund.

V tomto kurzu:

  • Spusťte Snapshot Debugger
  • Nastavení snímkovací bod a zobrazení snímku
  • Nastavení protokolovací bod

Požadavky

  • Snapshot Debugger je k dispozici pouze počínaje Visual Studio 2017 Enterprise verze 15,5 nebo vyšší s úlohou vývoj pro Azure. (Na kartě jednotlivé součásti najdete v části ladění a testování > Ladicí program snímků.)

    pokud ještě není nainstalovaná, nainstalujte Visual Studio 2019. pokud aktualizujete z předchozí instalace Visual Studio, spusťte Instalační program pro Visual Studio a podívejte se na součást Snapshot Debugger v úloze vývoje ASP.NET a webu.

    pokud ještě není nainstalovaný, nainstalujte Visual Studio 2017 Enterprise verze 15,5 nebo novější. pokud aktualizujete z předchozí instalace Visual Studio 2017, spusťte Instalační program pro Visual Studio a podívejte se na součást Snapshot Debugger v úloze vývoje ASP.NET a webu.

  • Plán Azure App Service Basic nebo vyšší

  • Kolekce snímků je k dispozici pro následující webové aplikace, které jsou spuštěny v Azure App Service:

    • ASP.NET aplikace spuštěné v .NET Framework 4.6.1 nebo novějším.
    • ASP.NET Core aplikace běžící na .net Core 2,0 nebo novější v Windows.

Otevřete projekt a spusťte Snapshot Debugger

  1. Otevřete projekt, pro který chcete vytvořit snímek ladění.

    Důležité

    Chcete-li ladit snímky, je nutné otevřít stejnou verzi zdrojového kódu , která je publikována v Azure App Service.

  1. V Průzkumníku cloudu (zobrazit > Průzkumník cloudu) klikněte pravým tlačítkem na Azure App Service je projekt nasazený a vyberte připojit Snapshot Debugger.

    Spustit ladicí program snímků

  1. Zvolit ladění > připojit Snapshot Debugger.... Vyberte Azure App Service projekt je nasazený a účet úložiště Azure a pak klikněte na připojit. Snapshot Debugger také podporuje službu Azure Kubernetes a & Virtual Machine Scale Sets Azure Virtual Machines (VM).

    Spuštění Snapshot debuggeru z nabídky ladění

    Vybrat prostředek Azure

Důležité

Při prvním výběru připojit Snapshot Debugger budete vyzváni k instalaci rozšíření Snapshot Debugger webu na Azure App Service. Tato instalace vyžaduje restartování Azure App Service.

Poznámka

rozšíření Application Insights lokality také podporuje ladění snímků. Pokud se vám zobrazí chybová zpráva "rozšíření webu je zastaralé", přečtěte si téma tipy pro řešení potíží a známé problémy ladění snímků pro upgrade podrobností.

Poznámka

(Visual Studio 2019 verze 16,2 a vyšší) Snapshot Debugger povolili podporu cloudu Azure. ujistěte se, že se váš účet Azure resource i Azure Storage, který vyberete, nachází ve stejném cloudu. Pokud máte dotazy týkající se konfigurace dodržování předpisů Azure v rámci vaší organizace, obraťte se prosím na správce Azure.

Visual Studio je nyní v režimu ladění snímků. Režim ladění snímků

v okně moduly se zobrazí, když jsou všechny moduly načteny pro Azure App Service (pro otevření tohoto okna vyberte modul ladění > Windows > ).

Kontrolovat okno modulů

Nastavení snímkovací bod

  1. V editoru kódu klikněte na levé tlačítko vedle řádku kódu, který vás zajímá, a nastavte snímkovací bod. Ujistěte se, že se jedná o kód, který víte, že se spustí.

    Nastavení snímkovací bod

  2. Kliknutím na Spustit shromažďování zapněte snímkovací bod.

    Zapnout snímkovací bod

    Tip

    Nemůžete krokovat při prohlížení snímku, ale v kódu můžete umístit více snímkovací body, aby se mohlo postupovat podle spuštění na různých řádcích kódu. Pokud máte ve svém kódu více snímkovací body, Snapshot Debugger zajistí, aby odpovídající snímky byly ze stejné relace koncového uživatele. Snapshot Debugger to dělá i v případě, že vaše aplikace bude na mnoho uživatelů.

Pořízení snímku

Jakmile je snímkovací bod nastaveno, můžete buď ručně vygenerovat snímek, a to tak, že v prohlížeči zobrazíte svůj web a spustíte řádek kódu označený nebo počkejte, než vaši uživatelé vygenerují ze svého používání webu.

Kontrola dat snímku

  1. Když je dosaženo snímkovací bod, zobrazí se snímek v okně Diagnostické nástroje. chcete-li otevřít toto okno, vyberte možnost ladění > Windows > zobrazit Diagnostické nástroje.

    Otevřít snímkovací bod

  2. Dvojím kliknutím na snímkovací bod otevřete snímek v editoru kódu.

    Kontrola dat snímku

    Z tohoto zobrazení můžete na proměnné umístit ukazatel myši a zobrazit tak tipy, použít místní okna, kukátka a zásobník volání a také vyhodnotit výrazy.

    Samotný web je stále živý a koncoví uživatelé to neovlivní. Ve výchozím nastavení je zachycen pouze jeden snímek na snímkovací bod: po zachycení snímku se snímkovací bod vypne. Pokud chcete zachytit jiný snímek na snímkovací bod, můžete snímkovací bod znovu zapnout kliknutím na aktualizovat kolekci.

Do své aplikace můžete také přidat další snímkovací body a zapnout je pomocí tlačítka aktualizovat kolekci .

Potřebujete pomoc? Podívejte se na téma řešení potíží a známé problémy a Nejčastější dotazy ke stránkám ladění snímků .

Nastavení podmíněného snímkovací bod

Pokud je obtížné znovu vytvořit konkrétní stav ve vaší aplikaci, zvažte použití podmíněného snímkovací bod. Podmíněný snímkovací body vám umožňuje řídit, kdy se má pořídit snímek, například když proměnná obsahuje určitou hodnotu, kterou chcete zkontrolovat. Podmínky můžete nastavit pomocí výrazů, filtrů nebo počtu volání.

Vytvoření podmíněného snímkovací bod

  1. klikněte pravým tlačítkem myši na ikonu snímkovací bod (prázdná koule) a vyberte Nastavení.

    Vyberte Nastavení

  2. V okně nastavení snímkovací bod zadejte výraz.

    Zadejte výraz.

    Na předchozím obrázku se snímek bere pouze pro snímkovací bod, kdy visitor.FirstName == "Dan" .

Nastavení protokolovací bod

Kromě pořizování snímku, když se snímkovací bod, můžete také nakonfigurovat snímkovací bod tak, aby protokoloval zprávu (to znamená vytvořit protokolovací bod). Můžete nastavit protokolovacích bodů bez nutnosti opětovného nasazení aplikace. Protokolovacích bodů se spouští prakticky a nezpůsobí žádný vliv ani vedlejší účinky na spuštěnou aplikaci.

Vytvoření protokolovací bod

  1. klikněte pravým tlačítkem myši na ikonu snímkovací bod (modrý šestiúhelník) a vyberte Nastavení.

  2. V okně nastavení snímkovací bod vyberte Akce.

    Vytvoření protokolovací bod

  3. Do pole zpráva můžete zadat novou zprávu protokolu, kterou chcete protokolovat. Můžete také vyhodnotit proměnné ve zprávě protokolu jejich umístěním do složených závorek.

    Pokud zvolíte možnost Odeslat do okno výstup, když se protokolovací bod, zpráva se zobrazí v okně diagnostické nástroje.

    Protokolovací bod data v okně Diagnostické nástroje

    pokud zvolíte odeslat do protokolu aplikace, když se protokolovací bod, zobrazí se zpráva kdekoli, kde uvidíte zprávy z System.Diagnostics.Trace (nebo ILogger v .net Core), jako je například aplikace Přehledy.

Další kroky

V tomto kurzu jste se naučili, jak používat Snapshot Debugger pro App Services. Možná budete chtít přečíst si další podrobnosti o této funkci.