Sledování webových aplikací v Azure

Azure App Service
Azure Log Analytics
Azure Monitor

Tento scénář se zabývá monitorovacími službami, které můžete použít a popisuje model toku dat pro použití s více zdroji dat. Pokud jde o monitorování, mnoho nástrojů a služeb pracuje s nasazeními Azure. V tomto scénáři zvolíme snadno dostupné služby přesně proto, že jsou snadno použitelné. Další možnosti monitorování jsou popsány dále v tomto článku.

Architektura

Stáhněte si soubor aplikace Visio s touto architekturou.

Tok dat

Tento scénář používá spravované prostředí Azure k hostování aplikace a datové vrstvy. Data procházejí tímto scénářem:

  1. Uživatel komunikuje s aplikací.
  2. Prohlížeč a app service generují telemetrii.
  3. Aplikace Přehledy shromažďuje a analyzuje stav, výkon a data o využití aplikací.
  4. Vývojáři a správci můžou kontrolovat informace o stavu, výkonu a využití.
  5. Azure SQL Database generuje telemetrii.
  6. Azure Monitor shromažďuje a analyzuje metriky a kvóty infrastruktury.
  7. Log Analytics shromažďuje a analyzuje protokoly a metriky.
  8. Vývojáři a správci můžou kontrolovat informace o stavu, výkonu a využití.

Komponenty

  • Aplikace Azure Service je služba PaaS pro vytváření a hostování aplikací ve spravovaných virtuálních počítačích. Základní výpočetní infrastruktury, na kterých běží vaše aplikace, se spravují za vás. App Service poskytuje monitorování kvót využití prostředků a metrik aplikací, protokolování diagnostických informací a upozornění na základě metrik. Ještě lépe můžete použít application Přehledy k vytvoření testů dostupnosti pro testování aplikace z různých oblastí.
  • Aplikační Přehledy je rozšiřitelná služba APM (Application Performance Management) pro vývojáře a podporuje více platforem. Monitoruje aplikaci, detekuje anomálie aplikací, jako je nízký výkon a selhání, a odesílá telemetrii na web Azure Portal. Aplikační Přehledy lze také použít k protokolování, distribuovanému trasování a vlastním metrikám aplikací.
  • Azure Monitor poskytuje metriky a protokoly infrastruktury základní úrovně pro většinu služeb v Azure. Metriky můžete interagovat několika způsoby, včetně jejich grafů na webu Azure Portal, přístupu k nim prostřednictvím rozhraní REST API nebo dotazování pomocí PowerShellu nebo rozhraní příkazového řádku. Azure Monitor také nabízí data přímo do Log Analytics a dalších služeb, kde je můžete dotazovat a kombinovat s daty z jiných zdrojů místně nebo v cloudu.
  • Log Analytics pomáhá korelovat data o využití a výkonu shromážděná aplikací Přehledy s konfiguračními a výkonovými daty napříč prostředky Azure, které aplikaci podporují. Tento scénář používá agenta Azure Log Analytics k nabízení protokolů auditu SQL Serveru do Log Analytics. Dotazy a zobrazení dat můžete psát v okně Log Analytics na webu Azure Portal.

Podrobnosti scénáře

Nabídky PaaS (Platforma jako služba) Azure spravují výpočetní prostředky za vás a ovlivňují způsob monitorování nasazení. Azure zahrnuje několik monitorovacích služeb, z nichž každá provádí určitou roli. Tyto služby společně poskytují komplexní řešení pro shromažďování, analýzu a zpracování telemetrie z vašich aplikací a prostředků Azure, které využívají.

Tento scénář se zabývá monitorovacími službami, které můžete použít a popisuje model toku dat pro použití s více zdroji dat. Pokud jde o monitorování, mnoho nástrojů a služeb pracuje s nasazeními Azure. V tomto scénáři zvolíme snadno dostupné služby přesně proto, že jsou snadno použitelné. Další možnosti monitorování jsou popsány dále v tomto článku.

Potenciální případy použití

Mezi další relevantní případy použití patří:

  • Instrumentace webové aplikace pro monitorování telemetrie
  • Shromažďování front-endové a back-endové telemetrie pro aplikaci nasazenou v Azure
  • Monitorování metrik a kvót přidružených ke službám v Azure

Důležité informace

Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace naleznete v tématu Microsoft Azure Well-Architected Framework.

Provozní dokonalost

Efektivita provozu zahrnuje provozní procesy, které nasazují aplikaci a udržují ji spuštěnou v produkčním prostředí. Další informace najdete v tématu Přehled pilíře efektivity provozu.

Sledování

Doporučeným postupem je přidání aplikačních Přehledy do kódu během vývoje pomocí sad SDK Přehledy aplikací a přizpůsobení na aplikaci. Tyto opensourcové sady SDK jsou k dispozici pro většinu aplikačních architektur. Pokud chcete rozšířit a řídit data, která shromažďujete, začleňte do vývojového procesu použití sad SDK pro testování i produkční nasazení. Hlavním požadavkem je, aby aplikace měla přímý nebo nepřímý dohled na koncový bod aplikace Přehledy příjmu dat hostovaný s internetovou adresou. Pak můžete přidat telemetrii nebo rozšířit existující kolekci telemetrie.

Monitorování modulu runtime je dalším snadným způsobem, jak začít. Shromážděná telemetrie musí být řízena prostřednictvím konfiguračních souborů. Můžete například zahrnout metody modulu runtime, které umožňují nástroje, jako je Application Přehledy Status Monitor, nasadit sady SDK do správné složky a přidat správné konfigurace pro zahájení monitorování.

Stejně jako application Přehledy poskytuje Služba Log Analytics nástroje pro analýzu dat napříč zdroji, vytváření složitých dotazů a odesílání proaktivních upozornění na zadané podmínky. Telemetrii můžete zobrazit také na webu Azure Portal. Log Analytics přidává hodnotu ke stávajícím monitorovacím službám, jako je Azure Monitor , a může také monitorovat místní prostředí.

Aplikace Přehledy i Log Analytics používají dotazovací jazyk Azure Log Analytics. Pomocí dotazů mezi prostředky můžete také analyzovat telemetrii shromážděnou službou Application Přehledy a Log Analytics v jednom dotazu.

Všechny výstrahy odesílají azure Monitor, aplikační Přehledy a Log Analytics. Například upozornění služby Azure Monitor na metriky na úrovni platformy, jako je využití procesoru, zatímco aplikace Přehledy upozornění na metriky na úrovni aplikace, jako je doba odezvy serveru. Upozornění služby Azure Monitor na nové události v protokolu aktivit Azure, zatímco Log Analytics může vydávat upozornění na metriky nebo data událostí pro služby nakonfigurované tak, aby je používaly. Sjednocená upozornění ve službě Azure Monitor je nové jednotné prostředí pro upozorňování v Azure, které používá jinou taxonomii.

Alternativy

Tento článek popisuje pohodlně dostupné možnosti monitorování s oblíbenými funkcemi, ale máte mnoho možností, včetně možnosti vytvořit vlastní mechanismy protokolování. Doporučeným postupem je přidat monitorovací služby při vytváření vrstev v řešení. Tady je několik možných rozšíření a alternativ:

Další informace najdete v tématu Monitorování pro DevOps v architektuře Azure Well-Architected Framework.

Škálovatelnost a dostupnost

Tento scénář se zaměřuje na řešení PaaS pro monitorování ve velké části, protože pohodlně zpracovávají dostupnost a škálovatelnost za vás a jsou podporovány smlouvami o úrovni služeb (SLA). Služba App Services například poskytuje garantovanou smlouvu SLA pro její dostupnost.

Přehledy aplikace má omezení počtu požadavků, které je možné zpracovat za sekundu. Pokud limit požadavku překročíte, může docházet k omezování zpráv. Pokud chcete zabránit omezování, implementujte filtrování nebo vzorkování , aby se snížila rychlost dat.

Důležité informace o vysoké dostupnosti pro aplikaci, kterou spouštíte, jsou ale zodpovědností vývojáře. Informace o škálování najdete například v aspektech škálovatelnosti v referenční architektuře základních webových aplikací. Po nasazení aplikace můžete nastavit testy, které budou monitorovat její dostupnost pomocí služby Application Přehledy.

Zabezpečení

Zabezpečení poskytuje záruky proti záměrným útokům a zneužití cenných dat a systémů. Další informace najdete v tématu Přehled pilíře zabezpečení.

Citlivé informace a požadavky na dodržování předpisů ovlivňují shromažďování, uchovávání a ukládání dat. Přečtěte si další informace o tom, jak application Přehledy a Log Analytics zpracovávají telemetrii.

Můžou platit i následující aspekty zabezpečení:

  • Vytvořte plán pro zpracování osobních údajů, pokud vývojáři můžou shromažďovat vlastní data nebo rozšiřovat stávající telemetrii.
  • Zvažte uchovávání dat. Aplikace například Přehledy uchovává telemetrická data po dobu 90 dnů. Archivujte data, ke které chcete získat přístup po delší dobu pomocí Microsoft Power BI, průběžného exportu nebo rozhraní REST API. Platí sazby za úložiště.
  • Omezte přístup k prostředkům Azure, abyste mohli řídit přístup k datům a kdo může zobrazit telemetrii z konkrétní aplikace. Pokud chcete pomoct uzamknout přístup k monitorování telemetrie, přečtěte si téma Prostředky, role a řízení přístupu v Přehledy aplikace.
  • Zvažte, jestli chcete řídit přístup pro čtení a zápis v kódu aplikace, aby uživatelé nemohli přidávat značky verzí nebo značek, které omezují příjem dat z aplikace. U Přehledy aplikace neexistuje žádná kontrola nad jednotlivými datovými položkami po jejich odeslání do prostředku, takže pokud má uživatel přístup k jakýmkoli datům, má přístup ke všem datům v jednotlivých prostředcích.
  • Přidejte mechanismy zásad správného řízení , které v případě potřeby vynucuje zásady nebo řízení nákladů u prostředků Azure. Log Analytics můžete například použít k monitorování související se zabezpečením, jako jsou zásady a řízení přístupu na základě role, nebo použít Azure Policy k vytváření, přiřazování a správě definic zásad.
  • Pokud chcete monitorovat potenciální problémy se zabezpečením a získat centrální přehled o stavu zabezpečení vašich prostředků Azure, zvažte použití Microsoft Defenderu pro cloud.

Optimalizace nákladů

Optimalizace nákladů se zabývá způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace najdete v tématu Přehled pilíře optimalizace nákladů.

Poplatky za monitorování se můžou rychle sečíst. Zvažte předem ceny, seznamte se s tím, co monitorujete, a zkontrolujte související poplatky za jednotlivé služby. Azure Monitor poskytuje základní metriky bez nákladů, zatímco monitorování nákladů na application Přehledy a Log Analytics vychází z množství přijatých dat a počtu spuštěných testů.

Abyste mohli začít, použijte cenovou kalkulačku k odhadu nákladů. Změňte různé cenové možnosti tak, aby odpovídaly očekávanému nasazení.

Telemetrie z aplikace Přehledy se odesílá na web Azure Portal během ladění a po publikování aplikace. Pro účely testování a zabránění poplatkům se instrumentuje omezený objem telemetrie. Pokud chcete přidat další indikátory, můžete zvýšit limit telemetrie. Podrobnější řízení najdete v tématu Vzorkování v Přehledy aplikace.

Po nasazení můžete sledovat stream živých metrik indikátorů výkonu. Tato data se neukládají – zobrazujete metriky v reálném čase, ale telemetrii je možné shromažďovat a analyzovat později. Za data Live Streamu se neúčtují žádné poplatky.

Log Analytics se účtuje podle počtu gigabajtů (GB) dat přijatých do této služby. Prvních 5 GB přijatých dat do služby Azure Log Analytics se každý měsíc nabízí zdarma a data se uchovávají bez poplatků za prvních 31 dnů v pracovním prostoru služby Log Analytics.

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autor:

Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.

Další kroky

Podívejte se na tyto zdroje informací, které vám pomůžou začít s vlastním řešením monitorování: