Řešení potíží s aplikací v Azure App Service pomocí Visual Studio
Přehled
Tento kurz ukazuje, jak pomocí nástrojů Visual Studio ladit aplikaci v App Service , pomocí vzdáleného spuštění v režimu ladění nebo zobrazením aplikačních protokolů a protokolů webového serveru.
Naučíte se:
- Které funkce správy aplikací jsou k dispozici v Visual Studio.
- Jak používat Visual Studio zobrazení k rychlým změnám ve vzdálené aplikaci.
- Jak spustit režim ladění vzdáleně, když je projekt spuštěný v Azure, a to jak pro aplikaci, tak pro webovou úlohu.
- Jak vytvořit protokoly trasování aplikace a zobrazit je, zatímco je aplikace vytváří.
- Jak zobrazit protokoly webového serveru, včetně podrobných chybových zpráv a trasování neúspěšných požadavků.
- Postup odeslání diagnostických protokolů do Azure Storage účtu a jejich zobrazení.
Pokud máte Visual Studio Ultimate, můžete k ladění použít také IntelliTrace. IntelliTrace se v tomto kurzu nezamezen.
Požadavky
Tento kurz funguje s vývojovým prostředím, webovým projektem a App Service aplikací, které jste nastavili v tématu Vytvoření ASP.NET aplikace v Azure App Service. V částech WebJobs budete potřebovat aplikaci, kterou vytvoříte v Začínáme pomocí Azure WebJobs SDK.
Ukázky kódu uvedené v tomto kurzu jsou pro webovou aplikaci C# MVC, ale postupy řešení potíží jsou stejné pro Visual Basic a Web Forms aplikace.
Kurz předpokládá, že používáte Visual Studio 2019.
Funkce streamování protokolů funguje jenom pro aplikace, které jsou .NET Framework 4 nebo novější.
Konfigurace a správa aplikací
Visual Studio poskytuje přístup k podmnožině funkcí správy aplikací a nastavení konfigurace, které jsou k dispozici v Azure Portal. V této části uvidíte, co je k dispozici pomocí Průzkumník serveru. Pokud chcete zobrazit nejnovější funkce integrace Azure, vyzkoušejte také Průzkumník cloudu. Obě okna můžete otevřít v nabídce Zobrazení.
Pokud ještě nejste přihlášení k Azure ve službě Visual Studio, klikněte pravým tlačítkem na Azure a vyberte Připojení Microsoft Azure Předplatné v Průzkumník serveru.
Alternativou je instalace certifikátu pro správu, který umožňuje přístup k vašemu účtu. Pokud se rozhodnete nainstalovat certifikát, klikněte pravým tlačítkem na uzel Azure v Průzkumník serveru a pak v místní nabídce vyberte Spravovat a filtrovat předplatná. V dialogovém okně Microsoft Azure předplatná klikněte na kartu Certifikáty a pak klikněte na Importovat. Postupujte podle pokynů ke stažení a importu souboru předplatného (nazývaného také soubor .publishsettings) pro váš účet Azure.
Poznámka
Pokud si stáhnete soubor předplatného, uložte ho do složky mimo adresáře zdrojového kódu (například ve složce Stažené soubory) a po dokončení importu ho odstraňte. Uživatel se zlými úmysly, který získá přístup k souboru předplatného, může upravovat, vytvářet a odstraňovat služby Azure.
Další informace o připojení k prostředkům Azure z Visual Studio najdete v tématu Přiřazení rolí Azure pomocí Azure Portal.
V Průzkumník serveru rozbalte Azure a rozbalte App Service.
Rozbalte skupinu prostředků, která obsahuje aplikaci, kterou jste vytvořili v části Vytvoření aplikace ASP.NETv Azure App Service , klikněte pravým tlačítkem na uzel aplikace a klikněte na Zobrazit Nastavení.

Zobrazí se karta Webová aplikace Azure, kde vidíte úlohy správy a konfigurace aplikací, které jsou k dispozici v Visual Studio.

V tomto kurzu použijete rozevírací seznam pro protokolování a trasování. Použijete také vzdálené ladění, ale k jeho povolení použijete jinou metodu.
Informace o polích App Nastavení a Připojovací řetězce v tomto okně najdete v Azure App Service: Jak fungují řetězce aplikací a připojovací řetězce.
Pokud chcete provést úlohu správy aplikací, kterou v tomto okně nelze provést, kliknutím na Otevřít v Portál pro správu otevřete okno prohlížeče pro Azure Portal.
Přístup k souborům aplikace v Průzkumník serveru
Obvykle nasazujete webový projekt s příznakem v souboru Web.config nastaveným na nebo , což znamená, že se vám v případě, že se něco customErrors On RemoteOnly nepokazí, zobrazí užitečná chybová zpráva. U mnoha chyb se zobrazí jen stránka podobná jedné z následujících:
Chyba serveru v aplikaci /:
Došlo k chybě:
Web nemůže zobrazit stránku.
Často nejjednodušším způsobem, jak zjistit příčinu chyby, je povolit podrobné chybové zprávy. První z předchozích snímků obrazovky vysvětluje, jak to udělat. To vyžaduje změnu v nasazené Web.config souboru. Můžete upravit soubor Web.config v projektu a znovu nasadit projekt nebo vytvořit Web.config transformaci a nasadit sestavení pro ladění, ale existuje rychlejší způsob: v Průzkumník řešení můžete přímo zobrazit a upravovat soubory ve vzdálené aplikaci pomocí funkce vzdáleného zobrazení.
V Průzkumník serveru rozbalte Azure, rozbalte App Service, rozbalte skupinu prostředků, ve které se vaše aplikace nachází, a pak rozbalte uzel pro vaši aplikaci.
Zobrazí se uzly, které vám poskytují přístup k souborům obsahu a souborům protokolu aplikace.
Rozbalte uzel Soubory a poklikejte na Web.config souboru.

Visual Studio otevře Web.config ze vzdálené aplikace a v záhlaví se vedle názvu souboru zobrazí [Remote].
Do elementu přidejte
system.webnásledující řádek:<customErrors mode="Off"></customErrors>
Aktualizujte prohlížeč, který zobrazuje neužitenou chybovou zprávu, a teď se zobrazí podrobná chybová zpráva, například v následujícím příkladu:

(Zobrazená chyba byla vytvořena přidáním řádku zobrazeného červeně do složky Views\Home\Index.cshtml.)
Úprava souboru Web.config je pouze jedním z příkladů scénářů, ve kterých schopnost číst a upravovat soubory ve vaší App Service aplikaci usnadňuje řešení potíží.
Vzdálené ladění aplikací
Pokud podrobná chybová zpráva neposkytuje dostatek informací a chybu nemůžete znovu vytvořit místně, dalším způsobem řešení potíží je vzdálené spuštění v režimu ladění. Můžete nastavit zarážky, přímo manipulovat s pamětí, procházet kód a dokonce změnit cestu kódu.
Vzdálené ladění nefunguje v edicích Express Visual Studio.
Tato část ukazuje, jak vzdáleně ladit pomocí projektu, který vytvoříte v tématu Vytvoření ASP.NET aplikace v Azure App Service.
Otevřete webový projekt, který jste vytvořili v tématu Vytvoření ASP.NET aplikace v Azure App Service.
Otevřete soubor Controllers\HomeController.cs.
Odstraňte
About()metodu a vložte na její místo následující kód.public ActionResult About() { string currentTime = DateTime.Now.ToLongTimeString(); ViewBag.Message = "The current time is " + currentTime; return View(); }Nastavte zarážku na
ViewBag.Messageřádek.V Průzkumník řešení klikněte pravým tlačítkem na projekt a pak klikněte na Publikovat.
V rozevíracím seznamu Profil vyberte stejný profil, který jste použili v části Vytvoření ASP.NET aplikace v Azure App Service. Potom klikněte na Nastavení.
V dialogovém okně Publikovat klikněte na kartu Nastavení, změňte Konfiguraci na Ladit a pak klikněte na Uložit.

Klikněte na Publikovat. Po dokončení nasazení a otevření prohlížeče na adrese URL Azure vaší aplikace zavřete prohlížeč.
V Průzkumník serveru klikněte pravým tlačítkem na aplikaci a pak klikněte na Attach Debugger (Připojit ladicí program).
Prohlížeč se automaticky otevře na domovské stránce spuštěné v Azure. Možná budete muset počkat 20 sekund, než Azure nastaví server pro ladění. K tomuto zpoždění dochází pouze při prvním spuštění aplikace v režimu ladění během 48 hodin. Když znovu spustíte ladění ve stejné době, nezůstane prodleva.
Poznámka
Pokud máte potíže se spuštěním ladicího programu, zkuste to pomocí Průzkumníka cloudu místo Průzkumník serveru.
V nabídce klikněte na O aplikaci.
Visual Studio se zastaví na zarážce a kód běží v Azure, ne na místním počítači.
Najeďte myší
currentTimena proměnnou a zobrazte hodnotu času.
Zobrazí se čas serveru Azure, který může být v jiném časovém pásmu než místní počítač.
Zadejte novou hodnotu
currentTimeproměnné, například "Now running in Azure" (Právě běží v Azure).Pokračujte stisknutím klávesy F5.
Stránka O aplikaci spuštěná v Azure zobrazí novou hodnotu, kterou jste zadali do proměnné currentTime.

Vzdálené ladění webových úlohy
Tato část ukazuje, jak vzdáleně ladit pomocí projektu a aplikace, které vytvoříte v Začínáme pomocí Azure WebJobs SDK.
Funkce uvedené v této části jsou k dispozici pouze v Visual Studio 2013 s aktualizací Update 4 nebo novější.
Vzdálené ladění funguje jenom s průběžným webjobs. Naplánované webové úlohy a webové úlohy na vyžádání nepodporují ladění.
Otevřete webový projekt, který jste vytvořili v Začínáme pomocí Azure WebJobs SDK.
V projektu ContosoAdsWebJob otevřete soubor Functions.cs.
Nastavte zarážku u prvního příkazu v
GnerateThumbnailmetodě .
V Průzkumník řešení klikněte pravým tlačítkem na webový projekt (ne na projekt webové úlohy) a klikněte na Publikovat.
V rozevíracím seznamu Profil vyberte stejný profil, který jste použili v Začínáme s Azure WebJobs SDK.
Klikněte na Nastavení, změňte Konfiguraci na Ladit a pak klikněte na Publikovat.
Visual Studio nasadí projekty webové a webové úlohy a váš prohlížeč se otevře na adrese URL Azure vaší aplikace.
V Průzkumník serveru rozbalte Azure > App Service > skupinu prostředků > vaší aplikace > WebJobs > Continuous a pak klikněte pravým tlačítkem na ContosoAdsWebJob.
Klikněte na Attach Debugger (Připojit ladicí program).
Prohlížeč se automaticky otevře na domovské stránce spuštěné v Azure. Možná budete muset počkat 20 sekund, než Azure nastaví server pro ladění. K tomuto zpoždění dochází pouze při prvním spuštění aplikace v režimu ladění během 48 hodin. Když znovu spustíte ladění ve stejné době, nená prodleva.
Ve webovém prohlížeči, který se otevře na domovské stránce Contoso Ads, vytvořte novou reklamu.
Vytvořením reklamy se vytvoří zpráva fronty, kterou webová úloha vyzvedne a zpracuje. Když sada WebJobs SDK zavolá funkci , aby zpracuje zprávu fronty, kód dosáhne vaší zarážky.
Když ladicí program přeruší zarážku, můžete zkoumat a měnit hodnoty proměnných, zatímco program běží v cloudu. Na následujícím obrázku ladicí program zobrazuje obsah objektu blobInfo, který byl předán
GenerateThumbnailmetodě .
Pokračujte stisknutím klávesy F5.
Metoda
GenerateThumbnaildokončí vytváření miniatury.V prohlížeči aktualizujte stránku Index a uvidíte miniaturu.
V Visual Studio ladění zastavte stisknutím kláves SHIFT+F5.
V Průzkumník serveru klikněte pravým tlačítkem na uzel ContosoAdsWebJob a pak klikněte na Zobrazit řídicí panel.
Přihlaste se pomocí svých přihlašovacích údajů Azure a potom kliknutím na název webové úlohy přejděte na stránku vaší webové úlohy.

Řídicí panel ukazuje, že se
GenerateThumbnailfunkce nedávno spouštěna.(Když příště kliknete na Zobrazit řídicí panel, nemusíte se přihlašovat a prohlížeč přejde přímo na stránku vaší webové úlohy.)
Kliknutím na název funkce zobrazíte podrobnosti o spuštění funkce.

Pokud vaše funkce napsala protokoly, můžete je zobrazit kliknutím na ToggleOutput.
Poznámky ke vzdálenému ladění
Spuštění v režimu ladění v produkčním režimu se nedoporučuje. Pokud vaše produkční aplikace není škálovaná na více instancí serveru, ladění zabrání webovému serveru v reakci na jiné požadavky. Pokud máte více instancí webového serveru, při připojení k ladicímu programu získáte náhodnou instanci a nemáte způsob, jak zajistit, aby následné požadavky prohlížeče přešly na stejnou instanci. Také obvykle nesazujete sestavení pro ladění do produkčního prostředí a optimalizace kompilátoru pro sestavení verzí můžou znemožněně ukázat, co se děje řádek po řádku ve zdrojovém kódu. Pro řešení problémů s produkčním prostředím je nejlepším zdrojem trasování aplikací a protokoly webového serveru.
Při vzdáleném ladění se vyhněte dlouhým zastavením na zarážkách. Azure považuje proces, který je zastavený déle než několik minut, za nereagující proces a vypne ho.
Během ladění server odesílá data do služby Visual Studio, což může mít vliv na poplatky za šířku pásma. Informace o rychlosti šířky pásma najdete v tématu Ceny Azure.
Ujistěte
debugse, že atributcompilationelementu v souboruWeb.config je nastaven na hodnotu true. Při publikování konfigurace sestavení pro ladění je ve výchozím nastavení nastavená na true.<system.web> <compilation debug="true" targetFramework="4.5" /> <httpRuntime targetFramework="4.5" /> </system.web>Pokud zjistíte, že ladicí program nepřidá krok do kódu, který chcete ladit, možná budete muset změnit nastavení Pouze můj kód kódu. Další informace naleznete v části Specify whether to debug only user code using Pouze můj kód in Visual Studio.
Časovač se na serveru spustí, když povolíte funkci vzdáleného ladění, a po 48 hodinách se tato funkce automaticky vypne. Tento 48hodinový limit se provádí z důvodů zabezpečení a výkonu. Tuto funkci můžete snadno znovu zapnout, kolikrát chcete. Doporučujeme nechat ho zakázaný, když aktivně ne ladicí program nespouštíte.
Ladicí program můžete ručně připojit k libovolnému procesu, nejen k procesu aplikace (w3wp.exe). Další informace o použití režimu ladění v nástroji Visual Studio v tématu Ladění v Visual Studio.
Přehled diagnostických protokolů
Aplikace ASP.NET spuštěná v aplikaci App Service může vytvořit následující druhy protokolů:
- Protokoly trasování aplikací
Aplikace vytvoří tyto protokoly voláním metod třídy System.Diagnostics.Trace. - Protokoly webového serveru
Webový server vytvoří položku protokolu pro každý požadavek HTTP na aplikaci. - Podrobné protokoly chybových zpráv
Webový server vytvoří stránku HTML s dalšími informacemi o neúspěšných požadavcích HTTP (požadavky, které mají za následek stavový kód 400 nebo vyšší). - Protokoly trasování neúspěšných požadavků
Webový server vytvoří soubor XML s podrobnými informacemi o trasování neúspěšných požadavků HTTP. Webový server také poskytuje soubor XSL pro formátování XML v prohlížeči.
Protokolování má vliv na výkon aplikace, takže Azure umožňuje podle potřeby jednotlivé typy protokolů povolit nebo zakázat. V případě aplikačních protokolů můžete určit, že se mají zapisovat pouze protokoly nad určitou úroveň závažnosti. Když vytvoříte novou aplikaci, je ve výchozím nastavení protokolování zakázané.
Protokoly se zapisou do souborů ve složce LogFiles v systému souborů vaší aplikace a jsou přístupné přes FTP. Protokoly webového serveru a aplikační protokoly je také možné zapisovat do Azure Storage účtu. V účtu úložiště můžete uchovávat větší objem protokolů, než je možné v systému souborů. Při použití systému souborů jste omezeni na maximálně 100 megabajtů protokolů. (Protokoly systému souborů jsou jenom pro krátkodobé uchovávání. Azure po dosažení limitu odstraní staré soubory protokolů, aby bylo místo pro nové soubory.)
Vytvoření a zobrazení protokolů trasování aplikací
V této části budete provádět následující úlohy:
- Přidejte příkazy trasování do webového projektu, který jste vytvořili v části Začínáme s Azure a ASP.NET.
- Zobrazte protokoly při místním spuštění projektu.
- Prohlédněte si protokoly vygenerované aplikací spuštěnou v Azure.
Informace o vytváření aplikačních protokolů ve webových úlohách najdete v tématu Jak pracovat s Azure Queue Storage pomocí sady WebJobs SDK –Jak zapisovat protokoly. Následující pokyny pro zobrazení protokolů a řízení způsobu jejich uložení v Azure platí také pro aplikační protokoly vytvořené webovými úlohami.
Přidání příkazů trasování do aplikace
Otevřete soubor Controllers\HomeController.cs a nahraďte metody , a následujícím kódem, abyste mohli přidat příkazy
Indexa příkaz proAboutContactTraceusingSystem.Diagnostics:public ActionResult Index() { Trace.WriteLine("Entering Index method"); ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application."; Trace.TraceInformation("Displaying the Index page at " + DateTime.Now.ToLongTimeString()); Trace.WriteLine("Leaving Index method"); return View(); } public ActionResult About() { Trace.WriteLine("Entering About method"); ViewBag.Message = "Your app description page."; Trace.TraceWarning("Transient error on the About page at " + DateTime.Now.ToShortTimeString()); Trace.WriteLine("Leaving About method"); return View(); } public ActionResult Contact() { Trace.WriteLine("Entering Contact method"); ViewBag.Message = "Your contact page."; Trace.TraceError("Fatal error on the Contact page at " + DateTime.Now.ToLongTimeString()); Trace.WriteLine("Leaving Contact method"); return View(); }Na
using System.Diagnostics;začátek souboru přidejte příkaz .
Zobrazení výstupu trasování místně
Stisknutím klávesy F5 spusťte aplikaci v režimu ladění.
Výchozí naslouchací proces trasování zapíše veškerý výstup trasování do okna Výstup spolu s dalším výstupem ladění. Následující obrázek ukazuje výstup z příkazů trasování, které jste přidali do
Indexmetody .
Následující kroky ukazují, jak zobrazit výstup trasování na webové stránce bez kompilace v režimu ladění.
Otevřete aplikaci Web.config souboru (ten, který se nachází ve složce projektu) a přidejte element na konec souboru těsně před uzavírací
<system.diagnostics></configuration>prvek:<system.diagnostics> <trace> <listeners> <add name="WebPageTraceListener" type="System.Web.WebPageTraceListener, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> </listeners> </trace> </system.diagnostics>
Umožňuje WebPageTraceListener zobrazit výstup trasování tak, že se zobrazí na /trace.axd .
Přidejte element trace do Web.config
<system.web>souboru, jako je například následující příklad:<trace enabled="true" writeToDiagnosticsTrace="true" mostRecent="true" pageOutput="false" />Stiskněte klávesy CTRL+F5 a spusťte aplikaci.
Do adresního řádku okna prohlížeče přidejte do adresy URL trace.axd a stiskněte Enter (adresa URL je podobná
http://localhost:53370/trace.axdadrese ).Na stránce Trasování aplikace klikněte na prvním řádku na Zobrazit podrobnosti (ne na řádek BrowserLink).
Zobrazí se stránka Podrobnosti požadavku a v části Informace o trasování uvidíte výstup z příkazů trasování, které jste přidali do
Indexmetody .
Ve výchozím nastavení
trace.axdje k dispozici pouze místně. Pokud jste chtěli, aby byl k dispozici ze vzdálené aplikace, mohli byste přidatlocalOnly="false"dotraceprvku v souboru Web.config , jak je znázorněno v následujícím příkladu:<trace enabled="true" writeToDiagnosticsTrace="true" localOnly="false" mostRecent="true" pageOutput="false" />Povolení
trace.axdv produkční aplikaci se ale z bezpečnostních důvodů nedoporučuje. V následujících částech uvidíte snazší způsob, jak číst protokoly trasování v aplikaci App Service.
Zobrazit výstup trasování v Azure
V Průzkumník řešení klikněte pravým tlačítkem myši na webový projekt a klikněte na publikovat.
V dialogovém okně Publikovat web klikněte na publikovat.
po Visual Studio publikování aktualizace otevře okno prohlížeče na domovské stránce (za předpokladu, že jste na kartě připojení neurčili cílovou adresu URL ).
V Průzkumník serveru klikněte pravým tlačítkem myši na svou aplikaci a vyberte Zobrazit protokoly streamování.
V okně výstup se zobrazí zpráva, že jste připojeni ke službě streamování protokolů a do každé minuty přidáte řádek oznámení bez protokolu, který se má zobrazit.
V okně prohlížeče, které zobrazuje vaši domovskou stránku aplikace klikněte na tlačítko kontakt.
Během několika sekund se zobrazí výstup trasování na úrovni chyby, které jste přidali do metody,
Contactv okně výstup .
Visual Studio se zobrazuje pouze trasování na úrovni chyb, protože toto je výchozí nastavení, když povolíte službu sledování protokolů. Když vytvoříte novou aplikaci App Service, všechna protokolování budou ve výchozím nastavení zakázaná, protože jste viděli, když jste otevřeli stránku nastavení dříve:

pokud jste však vybrali možnost zobrazit protokoly streamování, Visual Studio automaticky změnila protokolování aplikace (systém souborů) na chybu, což znamená, že protokoly na úrovni chyby jsou hlášeny. Aby se zobrazily všechny protokoly trasování, můžete toto nastavení změnit na verbose. Když vyberete nižší úroveň závažnosti než chyba, nahlásí se taky všechny protokoly pro vyšší úrovně závažnosti. Takže když vyberete podrobné informace, zobrazí se také protokoly informací, upozornění a chyb.
v Průzkumník serveru klikněte pravým tlačítkem myši na aplikaci a potom klikněte na tlačítko zobrazit Nastavení jako dříve.
Změňte protokolování aplikace (systém souborů) na podrobné a pak klikněte na Uložit.

V okně prohlížeče, ve kterém se teď zobrazuje vaše kontaktní stránka, klikněte na Domů, klikněte na o a pak klikněte na kontakt.
Během několika sekund se v okně výstup zobrazí celý výstup trasování.

V této části jste povolili a zakázali protokolování pomocí nastavení aplikace. Můžete také povolit a zakázat naslouchací procesy trasování úpravou souboru Web.config. Úprava souboru Web.config ale způsobí, že se doména aplikace recykluje, zatímco při povolování protokolování přes konfiguraci aplikace to neudělá. Pokud dojde k opakovanému reprodukování nebo občasnýmu zpracování problému, recyklování domény aplikace může "opravit" a vynutit vám, abyste počkali, až bude znovu provedeno. Povolením diagnostiky v Azure umožníte okamžité zachycení informací o chybách bez recyklace domény aplikace.
Funkce okna výstup
karta protokoly Microsoft Azure v okně výstup obsahuje několik tlačítek a textové pole:
Provádí následující funkce:
- Vymažte okno výstup .
- Povolí nebo zakáže zalamování řádků.
- Spustit nebo zastavit protokoly monitorování.
- Zadejte protokoly, které chcete monitorovat.
- Stáhněte si protokoly.
- Filtrovat protokoly na základě hledaného řetězce nebo regulárního výrazu.
- Zavřete okno výstup .
pokud zadáte hledaný řetězec nebo regulární výraz, Visual Studio filtruje informace protokolování v klientovi. To znamená, že můžete zadat kritéria po zobrazení protokolů v okně výstup a kritéria filtrování můžete změnit, aniž byste museli znovu vygenerovat protokoly.
Zobrazit protokoly webového serveru
Protokoly webového serveru zaznamenávají všechny aktivity HTTP pro aplikaci. chcete-li je zobrazit v okně výstup , je nutné je povolit pro aplikaci a sdělit Visual Studio, které chcete monitorovat.
Na kartě Konfigurace webové aplikace Azure , kterou jste otevřeli z Průzkumník serveru, změňte protokolování webového serveru na zapnuto a pak klikněte na Uložit.

v okně výstup klikněte na tlačítko určete, které protokoly Microsoft Azure se mají monitorovat .

v dialogovém okně možnosti protokolování Microsoft Azure vyberte protokoly webového serveru a pak klikněte na OK.

V okně prohlížeče, ve kterém se aplikace zobrazuje, klikněte na Domů, klikněte na o a pak klikněte na kontakt.
Obecně se zobrazí protokoly aplikací, za kterými následuje protokol webového serveru. Je možné, že budete muset chvíli počkat, než se protokoly objeví.

ve výchozím nastavení při prvním povolení protokolů webového serveru pomocí Visual Studio Azure zapisuje protokoly do systému souborů. Jako alternativu můžete použít Azure Portal k určení, jestli se protokoly webového serveru mají zapsat do kontejneru objektů BLOB v účtu úložiště.
pokud použijete portál k povolení protokolování webového serveru do účtu služby Azure storage a potom zakážete protokolování Visual Studio, při opětovném povolení přihlášení Visual Studio obnovení nastavení účtu úložiště.
Zobrazit podrobné protokoly chybových zpráv
Podrobné protokoly chyb obsahují další informace o požadavcích HTTP, které mají za následek kódy chybových odpovědí (400 nebo vyšší). aby je bylo možné zobrazit v okně výstup , je nutné je povolit pro aplikaci a sdělit Visual Studio, které chcete monitorovat.
Na kartě Konfigurace webové aplikace Azure , kterou jste otevřeli z Průzkumník serveru, změňte podrobné chybové zprávy na zapnuto a pak klikněte na Uložit.

v okně výstup klikněte na tlačítko určete, které protokoly Microsoft Azure se mají monitorovat .
v dialogovém okně možnosti protokolování Microsoft Azure klikněte na všechny protokoly a pak klikněte na OK.

Na panelu Adresa v okně prohlížeče přidejte k adrese URL znak navíc, který způsobí chybu 404 (například
http://localhost:53370/Home/Contactx), a stiskněte klávesu ENTER.po několika sekundách se zobrazí podrobný protokol chyb v okně Visual Studio výstup .

Ovládací prvek a kliknutím na odkaz zobrazíte výstup protokolu formátovaný v prohlížeči:

Stáhnout protokoly systému souborů
Všechny protokoly, které lze monitorovat v okně výstup , lze také stáhnout jako soubor .zip .
V okně výstup klikněte na Stáhnout protokoly streamování.
Průzkumník souborů se otevře ve složce stažené soubory se zvoleným staženým souborem.
Extrahujte soubor .zip a uvidíte následující strukturu složek:
Protokoly trasování aplikace jsou v .txt soubory ve složce LogFiles\Application .
Protokoly webového serveru jsou v souborech . log ve složce LogFiles\http\RawLogs . Pomocí nástroje, jako je analyzátor protokolů , můžete tyto soubory zobrazit a manipulovat s nimi.
Podrobné protokoly chybových zpráv jsou .html soubory ve složce LogFiles\DetailedErrors .
(složka nasazení je určena pro soubory vytvořené publikováním správy zdrojového kódu; neobsahuje žádnou souvislost s Visual Studio publikování. Složka Git je určena pro trasování týkající se publikování správy zdrojového kódu a služby streamování souborů protokolu.)
Zobrazit protokoly trasování neúspěšných žádostí
Protokoly pro trasování chybných požadavků jsou užitečné, pokud potřebujete pochopit podrobnosti o tom, jak služba IIS zpracovává požadavek HTTP, ve scénářích, jako je například přepisování adresy URL nebo problémy s ověřováním.
Aplikace App Service používají stejné funkce pro trasování chybných požadavků, které jsou dostupné se službou IIS 7,0 a novější. Nemáte přístup k nastavení služby IIS, která konfigurují, které chyby se ale protokolují. Pokud povolíte trasování chybných požadavků, budou zachyceny všechny chyby.
trasování chybných požadavků můžete povolit pomocí Visual Studio, ale nemůžete je zobrazit v Visual Studio. Tyto protokoly jsou soubory XML. Služba protokol streamování monitoruje pouze soubory, které jsou považovány za čitelné v režimu prostého textu: .txt, .html a soubory protokolu .
Protokoly pro trasování chybných požadavků můžete zobrazit v prohlížeči přímo prostřednictvím FTP nebo místně po použití nástroje FTP pro jejich stažení do místního počítače. V této části je budete zobrazovat přímo v prohlížeči.
Na kartě Konfigurace okna webové aplikace Azure , které jste otevřeli z Průzkumník serveru, změňte trasování chybných požadavků na zapnuto a pak klikněte na Uložit.

V adresní řádku okna prohlížeče, které zobrazuje aplikaci, přidejte k adrese URL další znak a klikněte na Enter, aby došlo k chybě 404.
To způsobí vytvoření protokolu trasování neúspěšných požadavků a následující kroky ukazují, jak protokol zobrazit nebo stáhnout.
V Visual Studio v okně Webová aplikace Azure na kartě Konfigurace klikněte na Otevřít v Portál pro správu.
Na stránce Azure Portal Nastavení vaší aplikace klikněte na Přihlašovací údaje pro nasazení a zadejte nové uživatelské jméno a heslo.

Poznámka
Když se přihlásíte, musíte použít celé uživatelské jméno s názvem aplikace, který k ní má předponu. Pokud například zadáte "myid" jako uživatelské jméno a web je "myexample", přihlásíte se jako "myexample\myid".
V novém okně prohlížeče přejděte na adresu URL, která se zobrazí v části Název hostitele FTP nebo Název hostitele FTPS na stránce Přehled vaší aplikace.
Přihlaste se pomocí přihlašovacích údajů FTP, které jste vytvořili dříve (včetně předpony názvu aplikace pro uživatelské jméno).
V prohlížeči se zobrazí kořenová složka aplikace.
Otevřete složku LogFiles.

Otevřete složku s názvem W3SVC a číselnou hodnotou.

Složka obsahuje soubory XML pro všechny chyby, které byly protokolovány po povolení trasování neúspěšných požadavků, a soubor XSL, který může prohlížeč použít k formátování XML.

Klikněte na soubor XML pro neúspěšný požadavek, pro který chcete zobrazit informace o trasování.
Následující obrázek znázorňuje část informací o trasování ukázkové chyby.

Další kroky
Viděli jste, jak Visual Studio umožňuje snadno zobrazit protokoly vytvořené aplikací App Service aplikace. Následující části obsahují odkazy na další zdroje informací k souvisejícím tématům:
- App Service potíží
- Ladění v sadě Visual Studio
- Vzdálené ladění v Azure
- Trasování v ASP.NET aplikacích
- Analýza protokolů webového serveru
- Analýza protokolů trasování neúspěšných požadavků
- Ladění Cloud Services
App Service potíží
Další informace o řešení potíží s aplikacemi v Azure App Service najdete v následujících zdrojích informací:
- Jak monitorovat aplikace
- Zkoumání nevrácené paměti v Azure App Service pomocí Visual Studio 2013. Blogový příspěvek Microsoft ALM o Visual Studio funkcí pro analýzu problémů se spravovanou pamětí.
- Azure App Service online nástrojů, které byste měli znát. Blogový příspěvek od Amit Apple.
Pokud chcete pomoc s konkrétní otázkou při řešení potíží, spusťte vlákno na jednom z následujících fór:
Ladění v sadě Visual Studio
Další informace o použití režimu ladění v nástroji Visual Studio najdete v tématu Ladění v nástroji Visual Studio and Debugging Tipy with Visual Studio 2010.
Vzdálené ladění v Azure
Další informace o vzdáleném ladění pro App Service aplikace a webové úlohy najdete v následujících zdrojích informací:
- Úvod do vzdáleného ladění Azure App Service.
- Úvod do vzdáleného ladění Azure App Service část 2 – Vzdálené ladění
- Úvod do vzdáleného ladění Azure App Service 3. část – Prostředí s více instancemi a GIT
- Ladění webových úlohy (video)
Pokud vaše aplikace používá webové rozhraní API Azure nebo Mobile Services back-end a potřebujete ho ladit, podívejte se na část Ladění back-endu .NETv Visual Studio .
Trasování v ASP.NET aplikacích
Na internetu nejsou k dispozici žádné důkladné a aktuální ASP.NET trasování dat. Nejlepší, co můžete udělat, je začít se starými úvodními materiály napsanými pro Web Forms, protože MVC ještě neexistoval, a doplnit je o novější blogové příspěvky, které se zaměřují na konkrétní problémy. Dobrými místy, kde začít, jsou následující zdroje informací:
Monitorování a telemetrie (sestavování Real-World Cloud Apps pomocí Azure)
Elektronická kniha s doporučeními pro trasování v cloudových aplikacích AzureASP.NET Trasování
Starý, ale stále dobrý prostředek pro základní seznámení s předmětem.Naslouchací procesy trasování
Informace o naslouchacích procesech trasování, ale nezmiňují WebPageTraceListener.Návod: Integrace ASP.NET s trasováním System.Diagnostics
Tento článek je také starý, ale obsahuje některé další informace, které úvodní článek nepokryje.Trasování v ASP.NET zobrazeních MVC Razor
Kromě trasování v zobrazeních Razor tento příspěvek vysvětluje, jak vytvořit filtr chyb, aby bylo možné protokolovat všechny neošetřené výjimky v aplikaci MVC. Informace o protokolování všech neošetřených výjimek v aplikaci Web Forms najdete v příkladu Global.asax v části Kompletní příklad obslužných rutin chyb na webu MSDN. Pokud chcete v MVC nebo Web Forms protokolovat určité výjimky, ale nechat výchozí zpracování architektury, aby se pro ně projeví, můžete je zachytit a znovu spustit jako v následujícím příkladu:try { // Your code that might cause an exception to be thrown. } catch (Exception ex) { Trace.TraceError("Exception: " + ex.ToString()); throw; }Protokolování trasování diagnostiky streamování z příkazového řádku Azure (plus Glimpse!)
Jak pomocí příkazového řádku provést to, co tento kurz ukazuje, jak v Visual Studio. Glimpse je nástroj pro ladění ASP.NET aplikací.Použití Web Apps protokolování a diagnostiky – s Davidem Ebbo a streamovacími protokoly z Web Apps – s Davidem Ebbo
Videa od Scotta Hanselmana a Davida Ebba
Pro protokolování chyb je alternativou k psaní vlastního kódu trasování použití open source protokolovacího rozhraní, jako je ELMAH. Další informace najdete v blogovém příspěvku Scotta Hanselmana o ELMAH.
K získání protokolů streamování z Azure také ASP.NET ani System.Diagnostics trasování. Služba App Service streamování aplikace streamuje všechny soubory.txt, .html nebo .log, které najde ve složce LogFiles. Proto můžete vytvořit vlastní protokolovací systém, který zapisuje do systému souborů aplikace a váš soubor se automaticky streamuje a stahuje. Jediné, co musíte udělat, je napsat kód aplikace, který vytvoří soubory ve složce d:\home\logfiles.
Analýza protokolů webového serveru
Další informace o analýze protokolů webového serveru najdete v následujících zdrojích informací:
- LogParser
Nástroj pro zobrazení dat v protokolech webového serveru (soubory .log). - Řešení potíží s výkonem služby IIS nebo chyb aplikací pomocí LogParseru
Úvod do nástroje Log Parser, který můžete použít k analýze protokolů webového serveru. - Blogové příspěvky Roberta McOraye o používání LogParser
- Stavový kód HTTP ve službě IIS 7.0, IIS 7.5 a IIS 8.0
Analýza protokolů trasování neúspěšných požadavků
Web Microsoft TechNet obsahuje část Trasování chybných žádostí, která může být užitečná k pochopení toho, jak tyto protokoly používat. Tato dokumentace se ale zaměřuje hlavně na konfiguraci trasování neúspěšných požadavků ve službě IIS, což v tomto Azure App Service.