Sdílet prostřednictvím


Monitorování služby Azure App Service

Tento článek popisuje:

  • Typy dat monitorování, které můžete pro tuto službu shromažďovat.
  • Způsoby analýzy dat

Poznámka:

Pokud už tuto službu nebo Azure Monitor znáte a chcete jenom vědět, jak analyzovat data monitorování, přečtěte si část Analyzovat na konci tohoto článku.

Pokud máte důležité aplikace a obchodní procesy, které spoléhají na prostředky Azure, musíte monitorovat a dostávat výstrahy pro váš systém. Služba Azure Monitor shromažďuje a agreguje metriky a protokoly ze všech komponent systému. Azure Monitor poskytuje přehled o dostupnosti, výkonu a odolnosti a upozorní vás na problémy. K nastavení a zobrazení dat monitorování můžete použít Azure Portal, PowerShell, Azure CLI, ROZHRANÍ REST API nebo klientské knihovny.

Monitorování služby App Service

Azure App Service poskytuje několik možností monitorování dostupnosti, výkonu a provozu prostředků. Mezi možnosti patří nastavení diagnostiky, Application Insights, datový proud protokolů, metriky, kvóty a výstrahy a protokoly aktivit.

Na stránce webu Azure Portal pro vaši webovou aplikaci můžete v levém navigačním panelu vybrat Diagnostika a řešit problémy a získat tak přístup k dokončení diagnostiky služby App Service pro vaši aplikaci. Další informace o diagnostickém nástroji služby App Service najdete v přehledu diagnostiky služby Aplikace Azure.

App Service poskytuje integrované protokolování diagnostiky, které pomáhá s laděním aplikací. Další informace o integrovaných záznamech najdete v záznamech diagnostiky streamu.

Ke sledování instancí služby App Service můžete použít také kontrolu stavu Azure. Další informace najdete v tématu Monitorování instancí služby App Service s využitím kontroly stavu.

Pokud používáte ASP.NET Core, ASP.NET, Javu, Node.js nebo Python, doporučujeme povolit pozorovatelnost pomocí Application Insights. Chcete-li se dozvědět více o možnostech pozorovatelnosti, které nabízí Application Insights, podívejte se na přehled Application Insights.

Scénáře monitorování

Následující tabulka uvádí metody monitorování, které se mají použít v různých scénářích.

Scénář Metoda monitorování
Chci monitorovat metriky a protokoly platformy Metriky platformy Azure Monitoru
Chci monitorovat výkon a využití aplikací (Azure Monitor) Služba Application Insights
Chci monitorovat integrované protokoly pro testování a vývoj Protokolový stream
Chci monitorovat limity prostředků a konfigurovat výstrahy Kvóty a upozornění
Chci monitorovat události prostředků webové aplikace Protokoly aktivit
Chci monitorovat metriky vizuálně Metriky

Přehledy

Některé služby v Azure mají integrovaný řídicí panel monitorování na webu Azure Portal, který poskytuje výchozí bod pro monitorování vaší služby. Tyto řídicí panely se nazývají přehledy a najdete je v Centru přehledů služby Azure Monitor na webu Azure Portal.

Application Insights

U podporovaných zásobníků služby App Service můžete Application Insights zapnout v Azure portálu beze změny kódu. K připojení aplikace k prostředku Application Insights použijte připojovací řetězec. Další informace najdete v tématu Přehled Application Insights a připojovací řetězce v Application Insights.

Návod

Pokud potřebujete vlastní telemetrii, nepodporované scénáře hostování nebo větší kontrolu nad konfigurací, použijte pro svůj zásobník instrumentaci založenou na kódu .

Na webu Azure Portal otevřete aplikaci, vyberte Application Insights>Enable, vytvořte nebo vyberte prostředek a pak vyberte Použít nastavení monitorování. App Service restartuje aplikaci.

Podpora a požadavky

Použijte podporované verze dlouhodobé podpory .NET (LTS). ASP.NET Core se řídí zásadami podpory .NET. Samostatná nasazení nejsou podporována.

Shromážděná telemetrie

Vyberte Doporučeno pro zapnutí monitorování nebo Zakázáno pro jeho vypnutí. Doporučené shromažďuje požadavky, závislosti, výjimky a dohlížení na prohlížeč.

Konfigurace monitorování

App Service neposkytuje další nastavení rozšíření pro ASP.NET Core. Pokud chcete změnit vzorkování, rozšiřování nebo vlastní telemetrii, použijte instrumentaci založenou na kódu. Další informace naleznete v tématu Povolení používání OpenTelemetry s Application Insights pro framework ASP.NET Core.

Monitorování na straně klienta

Monitorování na straně klienta je ve výchozím nastavení zapnuté s doporučeným monitorováním. Pokud ho chcete vypnout, nastavte APPINSIGHTS_JAVASCRIPT_ENABLED v false nastavení aplikace App Service a restartujte aplikaci.

Nasazení ve velkém měřítku

Pro automatizovaná nasazení přidejte tato nastavení aplikace. ApplicationInsightsAgent_EXTENSION_VERSION vybere řádek rozšíření webu spravovaného službou App Service: ~2 ve Windows nebo ~3 v Linuxu. App Service aktualizuje rozšíření webu automaticky a po restartování je použije. Služba App Service s verzí 2.8.9používá předinstalované rozšíření webu. Příklad ukazuje jenom část nastavení aplikace. Zachovejte všechna další nastavení aplikace, která už vaše aplikace používá.

Nastavení aplikace Hodnota Povinné Využití
APPLICATIONINSIGHTS_CONNECTION_STRING <connection string> Ano Připojí aplikaci k Application Insights.
ApplicationInsightsAgent_EXTENSION_VERSION ~2 ve Windows nebo ~3 v Linuxu Ano Zapne rozšíření webu spravovaného službou App Service.
XDT_MicrosoftApplicationInsights_Mode recommended nebo disabled Ano Nastaví režim kolekce.
XDT_MicrosoftApplicationInsights_PreemptSdk 1 Ano Požadováno pro automatickou instrumentaci služby App Service ASP.NET Core.

Následující příklad používá Linux. Používá se ~2 ve Windows.

Příklad fragmentu kódu šablony
"siteConfig": {
  "appSettings": [
    {
      "name": "APPLICATIONINSIGHTS_CONNECTION_STRING",
      "value": "<connection string>"
    },
    {
      "name": "ApplicationInsightsAgent_EXTENSION_VERSION",
      "value": "~3"
    },
    {
      "name": "XDT_MicrosoftApplicationInsights_Mode",
      "value": "recommended"
    },
    {
      "name": "XDT_MicrosoftApplicationInsights_PreemptSdk",
      "value": "1"
    }
  ]
}

Pokud chcete vygenerovat šablonu standardních hodnot, vytvořte webovou aplikaci s povolenou službou Application Insights na webu Azure Portal a stáhněte si šablonu automatizace z části Zkontrolovat a vytvořit.

Pomoc s řešením potíží najdete v našem vyhrazeném článku o řešení potíží.

Typy zdrojů

Azure používá koncept typů prostředků a ID k identifikaci všeho v předplatném. Typy prostředků jsou také součástí ID prostředků pro každý prostředek spuštěný v Azure. Například jeden typ zdroje pro virtuální počítač je Microsoft.Compute/virtualMachines. Seznam služeb a jejich přidružených typů prostředků najdete v tématu Poskytovatelé prostředků.

Azure Monitor podobně organizuje základní data monitorování do metrik a protokolů na základě typů prostředků, také nazývané namespace. Různé metriky a protokoly jsou k dispozici pro různé typy prostředků. Vaše služba může být přidružená k více než jednomu typu prostředku.

Další informace o typech prostředků služby App Service najdete v referenčních informacích k datům monitorování služby App Service.

Úložiště dat

Pro Azure Monitor:

  • Data metrik se ukládají v databázi metrik služby Azure Monitor.
  • Data protokolů se ukládají v úložišti protokolů služby Azure Monitor. Log Analytics je nástroj v portálu Azure, který může provádět dotazy do tohoto úložiště.
  • Protokol aktivit Azure je samostatné úložiště s vlastním rozhraním na webu Azure Portal.

Volitelně můžete směrovat data metriky a protokolu aktivit do úložiště protokolů služby Azure Monitor. Log Analytics pak můžete použít k dotazování na data a jejich korelaci s jinými daty protokolů.

Mnoho služeb může použít nastavení diagnostiky k odesílání metrik a dat protokolů do jiných umístění úložiště mimo Azure Monitor. Mezi příklady patří Azure Storage, hostované partnerské systémy a partnerské systémy mimo Azure pomocí služby Event Hubs.

Podrobné informace o tom, jak Azure Monitor ukládá data, najdete na datové platformě Azure Monitoru.

Metriky platformy Azure Monitoru

Azure Monitor poskytuje metriky platformy pro většinu služeb. Tyto metriky jsou:

  • Individuálně definované pro každý jmenný prostor.
  • Uložená v databázi metrik časových řad služby Azure Monitor.
  • Zjednodušené a schopné podporovat upozorňování téměř v reálném čase.
  • Používá se ke sledování výkonu prostředku v průběhu času.

Kolekce: Azure Monitor shromažďuje metriky platformy automaticky. Není nutná žádná konfigurace.

Směrování: Některé metriky platformy můžete také směrovat do protokolů služby Azure Monitor / Log Analytics, abyste je mohli dotazovat pomocí jiných dat protokolů. Zkontrolujte nastavení exportu DS pro každou metriku a zjistěte, jestli můžete pomocí nastavení diagnostiky směrovat metriku do protokolů služby Azure Monitor nebo Log Analytics.

Seznam všech metrik, které je možné shromáždit pro všechny prostředky ve službě Azure Monitor, najdete v tématu Podporované metriky ve službě Azure Monitor.

Seznam dostupných metrik pro Službu App Service najdete v referenčních informacích k datům monitorování služby App Service.

Nápovědu k pochopení metrik v App Service najdete v tématu Metriky. Můžete zobrazit metriky podle agregace (například průměr, maximum nebo minimum), instance, časového rozsahu a dalších filtrů. Metriky můžou monitorovat výkon, paměť, procesor a další atributy.

Logy prostředků Azure Monitor

Protokoly prostředků poskytují přehled o operacích, které byly provedeny na prostředku Azure. Protokoly se generují automaticky, ale pokud je chcete uložit nebo dotazovat, musíte je směrovat do protokolů služby Azure Monitor. Protokoly jsou uspořádané do kategorií. Daný obor názvů může mít více kategorií protokolu prostředků.

Kolekce: Protokoly prostředků se neshromažďují a neukládají, dokud nevytvoříte nastavení diagnostiky a nenasměrujete protokoly do jednoho nebo více umístění. Při vytváření nastavení diagnostiky určíte, které kategorie protokolů se mají shromažďovat. Existuje několik způsobů, jak vytvořit a udržovat nastavení diagnostiky, včetně webu Azure Portal, prostřednictvím kódu programu a služby Azure Policy.

Směrování: Navrhované výchozí nastavení je směrovat protokoly prostředků do Azure Monitor Logs, abyste k nim mohli přistupovat pomocí jiných protokolových dat. K dispozici jsou také jiná umístění, jako je Azure Storage, Azure Event Hubs a někteří monitorovací partneři Microsoftu. Další informace najdete v protokolech prostředků Azure a destinacích protokolů prostředků.

Podrobné informace o shromažďování, ukládání a směrování protokolů prostředků najdete v tématu Nastavení diagnostiky ve službě Azure Monitor.

Seznam všech dostupných kategorií protokolů prostředků ve službě Azure Monitor najdete v tématu Podporované protokoly prostředků ve službě Azure Monitor.

Všechny protokoly prostředků v Azure Monitor mají stejná hlavičková pole, za kterými následují pole specifická pro službu. Běžné schéma je popsané ve schématu protokolu prostředků služby Azure Monitor.

Dostupné kategorie protokolů prostředků, přidružené tabulky Log Analytics a schémata služby App Service najdete v referenčních informacích k datům monitorování služby App Service.

Návod

Protokoly jsou seskupeny podle kategorií. Skupiny kategorií jsou kolekce různých protokolů, které vám pomůžou dosáhnout různých cílů monitorování.
Skupina kategorií auditu umožňuje vybrat logy prostředků, které jsou nezbytné pro audit vašich prostředků. Další informace najdete v tématu Nastavení diagnostiky v protokolech prostředků služby Azure Monitor.

Protokol aktivit Azure

Protokol aktivit obsahuje události na úrovni předplatného, které sledují operace pro každý prostředek Azure, pohledem zvenku tohoto prostředku; například vytvoření nového prostředku nebo spuštění virtuálního počítače.

Shromažďování: Události protokolu aktivit se automaticky generují a shromažďují v samostatném úložišti pro zobrazení na webu Azure Portal.

Směrování: Data protokolu aktivit můžete odesílat do protokolů služby Azure Monitor, abyste je mohli analyzovat společně s dalšími daty protokolů. K dispozici jsou také jiná umístění, jako je Azure Storage, Azure Event Hubs a někteří monitorovací partneři Microsoftu. Další informace o směrování protokolu aktivit najdete v tématu Přehled protokolu aktivit Azure.

Protokoly aktivit Azure pro App Service

Protokoly aktivit Azure pro službu App Service zahrnují podrobnosti, jako jsou:

  • Jaké operace byly provedeny s prostředky (například plány služby App Service)
  • Kdo operaci zahájil
  • Kdy k operaci došlo
  • Stav operace
  • Hodnoty vlastností, které vám pomůžou prozkoumat operaci

Protokoly aktivit Azure je možné dotazovat pomocí webu Azure Portal, PowerShellu, rozhraní REST API nebo rozhraní příkazového řádku.

Odeslání protokolů aktivit do Event Gridu

Protokoly aktivit jsou založené na uživatelích, ale existuje nová integrace služby Azure Event Grid se službou App Service (Preview), která protokoluje akce uživatelů i automatizované události. Pomocí Event Gridu můžete nakonfigurovat obslužnou rutinu pro reakci na zmíněné události. Pomocí služby Event Grid třeba můžete pokaždé, když se do kontejneru úložiště objektů blob přidá nová fotka, okamžitě aktivovat funkci bez serveru, která spustí analýzu obrázku.

Nebo můžete pomocí služeb Event Grid a Logic Apps zpracovávat data kdekoli bez psaní kódu. Event Grid propojuje zdroje dat a obslužné rutiny událostí.

Pokud chcete zobrazit vlastnosti a schéma událostí App Service, podívejte se na Azure App Service jako zdroj Event Grid.

Stream protokolů (přes App Service Logs)

Azure poskytuje integrovanou diagnostiku, která pomáhá ladit aplikaci App Service během testování a vývoje. Stream protokolu se dá použít k získání rychlého přístupu k výstupu a chybám napsaným vaší aplikací a protokolům z webového serveru. Tato data obsahují kromě protokolů webového serveru standardní protokoly výstupu nebo chyb.

Analýza dat monitorování

Existuje mnoho nástrojů pro analýzu dat monitorování.

Nástroje služby Azure Monitor

Azure Monitor podporuje následující základní nástroje:

Mezi nástroje, které umožňují složitější vizualizaci, patří:

  • Řídicí panely , které umožňují kombinovat různé druhy dat do jednoho podokna na webu Azure Portal.
  • Sešity a přizpůsobitelné sestavy, které můžete vytvořit v Azure portálu. Sešity můžou obsahovat text, metriky a dotazy na protokoly.
  • Grafana, otevřený nástroj platformy, který exceluje v provozních řídicích panelech Grafana umožňuje vytvářet řídicí panely, které obsahují data z více zdrojů, než je Azure Monitor.
  • Power BI, služba obchodní analýzy, která poskytuje interaktivní vizualizace napříč různými zdroji dat. Power BI můžete nakonfigurovat tak, aby automaticky naimportovali data protokolů ze služby Azure Monitor, abyste mohli tyto vizualizace využívat.

Nástroje pro export ve službě Azure Monitor

Data ze služby Azure Monitor můžete získat do jiných nástrojů pomocí následujících metod:

Pokud chcete začít s rozhraním REST API pro Azure Monitor, přečtěte si průvodce rozhraním REST API pro monitorování Azure.

Dotazy Kusto

Data monitorování můžete analyzovat v protokolech služby Azure Monitor nebo v úložišti Log Analytics pomocí dotazovacího jazyka Kusto (KQL).

Důležité

Když na portálu vyberete protokoly z nabídky služby, otevře se Log Analytics s oborem dotazu nastaveným na aktuální službu. Tento obor znamená, že dotazy protokolu budou obsahovat pouze data z tohoto typu prostředku. Pokud chcete spustit dotaz, který obsahuje data z jiných služeb Azure, vyberte Protokoly z nabídky Azure Monitor. Podrobnosti najdete v tématu Rozsah dotazů protokolu a časový rozsah ve službě Azure Monitor Log Analytics .

Seznam běžných dotazů pro libovolnou službu najdete v rozhraní dotazů Log Analytics.

Následující ukázkový dotaz vám může pomoct monitorovat protokoly aplikací pomocí AppServiceAppLogs:

AppServiceAppLogs 
| project CustomLevel, _ResourceId
| summarize count() by CustomLevel, _ResourceId

Následující příklad dotazu vám může pomoci monitorovat protokoly HTTP pomocí nástroje AppServiceHTTPLogs, kde HTTP response code je 500 nebo vyšší.

AppServiceHTTPLogs 
//| where ResourceId = "MyResourceId" // Uncomment to get results for a specific resource Id when querying over a group of Apps
| where ScStatus >= 500
| reduce by strcat(CsMethod, ':\\', CsUriStem)

Následující ukázkový dotaz vám pomůže monitorovat chyby HTTP 500 připojením AppServiceConsoleLogs a AppserviceHTTPLogs:

let myHttp = AppServiceHTTPLogs | where  ScStatus == 500 | project TimeGen=substring(TimeGenerated, 0, 19), CsUriStem, ScStatus;  

let myConsole = AppServiceConsoleLogs | project TimeGen=substring(TimeGenerated, 0, 19), ResultDescription;

myHttp | join myConsole on TimeGen | project TimeGen, CsUriStem, ScStatus, ResultDescription;   

Další ukázkové dotazy najdete v dotazech služby Azure Monitor pro Službu App Service .

Výstrahy

Upozornění služby Azure Monitor vás aktivně upozorňují, když se v datech monitorování nacházejí konkrétní podmínky. Upozornění umožňují identifikovat a řešit problémy ve vašem systému, než si je zákazníci všimnou. Další informace najdete v tématu Upozornění služby Azure Monitor.

Existuje mnoho zdrojů běžných upozornění pro prostředky Azure. Příklady standardních upozornění pro prostředky Azure najdete v sekci Ukázkové dotazy na upozornění v protokolech. Web AMBA (Baseline Alerts) služby Azure Monitor poskytuje poloautomatickou metodu implementace důležitých upozornění, řídicích panelů a pokynů pro metriky platformy. Web se vztahuje na neustále se rozšiřující podmnožinu služeb Azure, včetně všech služeb, které jsou součástí cílové zóny Azure (ALZ).

Běžné schéma upozornění standardizuje spotřebu oznámení upozornění služby Azure Monitor. Další informace najdete v tématu Běžné schéma upozornění.

Typy výstrah

Na platformě Azure Monitor můžete upozornit na libovolnou metriku nebo zdroj dat protokolu. Existuje mnoho různých typů upozornění v závislosti na službách, které monitorujete, a na datech monitorování, která shromažďujete. Různé typy upozornění mají různé výhody a nevýhody. Další informace naleznete v tématu Volba správného typu upozornění monitorování.

Následující seznam popisuje typy upozornění služby Azure Monitor, které můžete vytvořit:

  • Upozornění na metriky vyhodnocují metriky prostředků v pravidelných intervalech. Metriky můžou být metriky platformy, vlastní metriky, protokoly ze služby Azure Monitor převedené na metriky nebo metriky Application Insights. Upozornění na metriky můžou také použít více podmínek a dynamických prahových hodnot.
  • Upozornění z protokolu umožňují uživatelům použít dotaz Log Analytics k vyhodnocení protokolů prostředků předdefinovanou frekvencí.
  • Upozornění protokolu aktivit se aktivují, když dojde k nové události protokolu aktivit, která odpovídá definovaným podmínkám. Upozornění služby Resource Health a upozornění služby Service Health jsou upozornění protokolu aktivit, která hlásí stav služby a prostředku.

Některé služby Azure také podporují upozornění inteligentního zjišťování, výstrahy Prometheus nebo doporučená pravidla upozornění.

U některých služeb můžete monitorovat škálování použitím stejného pravidla upozornění na metriku u více prostředků stejného typu, které existují ve stejné oblasti Azure. Jednotlivá oznámení se odesílají pro každý monitorovaný prostředek. Podporované služby a cloudy Azure najdete v tématu Monitorování více prostředků jedním pravidlem upozornění.

Poznámka:

Pokud vytváříte nebo spouštíte aplikaci, která běží ve vaší službě, může Azure Monitor application Insights nabízet více typů upozornění.

Kvóty a upozornění

Aplikace hostované ve službě App Service podléhají určitým omezením prostředků, které můžou používat. Tento limit definuje plán služby App Service přidružený k aplikaci. Metriky pro aplikaci nebo plán služby App Service je možné připojit k upozorněním. Další informace naleznete v tématu Kvóty.

Pravidla upozornění služby App Service

Následující tabulka uvádí běžná a doporučená pravidla upozornění pro službu App Service.

Typ upozornění Podmínka Příklady
Metrický systém Průměrná připojení Když počet připojení překročí nastavenou hodnotu
Metrický systém HTTP 404 Když odpovědi HTTP 404 překročí nastavenou hodnotu
Metrický systém Chyby HTTP serveru Když chyby HTTP 5xx překročí nastavenou hodnotu
Záznam aktivit Vytvoření nebo aktualizace webové aplikace Při vytváření nebo aktualizaci aplikace
Záznam aktivit Odstranění webové aplikace Při odstranění aplikace
Záznam aktivit Restartování webové aplikace Při restartování aplikace
Záznam aktivit Zastavení webové aplikace Když je aplikace zastavená

Doporučení poradce

U některých služeb, pokud během operací prostředků dojde k kritickým nebo bezprostředním změnám, zobrazí se na stránce Přehled služby na portálu výstraha. Další informace a doporučené opravy výstrahy najdete v doporučeních Advisoruv části Monitorování v nabídce vlevo. Během normálních operací se nezobrazují žádná doporučení poradce.

Další informace o Azure Advisoru najdete v přehledu Azure Advisoru.