Průběžné monitorování aplikací a služeb

Dokončeno

V této lekci se naučíte:

  • Jak průběžné monitorování pomáhá ověřovat stav, výkon a spolehlivost vaší aplikace a infrastruktury.
  • Jak pozorovatelnost zpřístupňuje data ze systémů, které potřebujete monitorovat.
  • Jak azure Monitor a application Přehledy umožňují implementovat průběžné monitorování.
  • Způsob, jakým vám správa IT služeb Připojení or může pomoct s implementací systému lístků.

Co je průběžné monitorování?

Tým chce během beta testu monitorovat web a infrastrukturu. Tim udělal nějaký výzkum a naučil se pár věcí.

Průběžné monitorování se týká procesů a technologií, které můžete použít k monitorování jednotlivých fází životního cyklu vaší aplikace. Průběžné monitorování pomáhá ověřovat stav, výkon a spolehlivost vaší aplikace a infrastruktury při přechodu ze vývoje do produkčního prostředí.

Průběžné monitorování vychází z konceptů CI/CD, které pomáhají vyvíjet a dodávat software rychleji a spolehlivěji, aby uživatelům poskytovaly nepřetržitou hodnotu.

Co je pozorovatelnost?

Pozorovatelnost označuje zpřístupnění dat v systému, který chcete monitorovat. Monitorování je skutečný úkol shromažďování a zobrazování těchto dat.

Co je Azure Monitor?

Azure Monitor je služba v Azure, která poskytuje plnou pozorovatelnost napříč aplikacemi a infrastrukturou v cloudu i v místním prostředí.

Azure Monitor funguje s vývojářskými nástroji, jako jsou Visual Studio a Visual Studio Code, takže ho můžete použít během fází vývoje a testování. Integruje se s Azure DevOps a zajišťuje správu verzí a správu pracovních položek během fází nasazení.

Azure Monitor se také integruje s nástroji pro správu IT služeb (ITSM) a informacemi o zabezpečení a správou událostí (SIEM), které vám pomůžou sledovat problémy a incidenty v rámci stávajících procesů IT.

Povolení monitorování aplikací

Aplikace jsou složité a mají mnoho vzájemně propojených komponent. Pokud chcete vizualizovat komplexní transakce a připojení napříč všemi systémy, musíte povolit monitorování všech webových aplikací a služeb.

Pokud v Azure DevOps nemáte existující projekt, můžete začít s Azure Developer CLI. Azure Developer CLI (azd) je opensourcový nástroj, který zrychluje dobu potřebnou k získání aplikace z místního vývojového prostředí do Azure. azd poskytuje osvědčené postupy, příkazy vhodné pro vývojáře, které se mapují na klíčové fáze pracovního postupu, ať už pracujete v terminálu, editoru nebo integrovaném vývojovém prostředí (IDE) nebo CI/CD (kontinuální integrace nebo průběžné nasazování).

Potom můžete do kanálu verze přidat průběžné monitorování zkombinováním Služby Azure Pipelines s Aplikace Azure Přehledy. Application Přehledy je funkce služby Azure Monitor, kterou můžete použít k monitorování živých aplikací. Brzy se podíváme na application Přehledy.

Povolení monitorování ve vaší infrastruktuře

Aplikace jsou stejně spolehlivé jako jejich základní infrastruktura. Když máte povolené monitorování v celé infrastruktuře, pomůže vám to dosáhnout plné pozorovatelnosti a usnadňuje zjišťování původních příčin, když se něco nepovede.

Azure Monitor pomáhá sledovat stav a výkon celé hybridní infrastruktury, včetně virtuálních počítačů, kontejnerů, úložišť a sítí.

Pomocí služby Azure Monitor můžete shromažďovat:

Infrastruktura jako kód umožňuje popsat prostřednictvím kódu infrastrukturu, kterou potřebujete pro vaši aplikaci. Vzhledem k tomu, že infrastrukturu popisujete pomocí kódu, můžete sledovat stejná schémata vývoje, testování a správy verzí, která týmy DevOps používají pro aplikace.

Pokud chcete povolit monitorování pomocí infrastruktury jako přístupu ke kódu, můžete použít:

  • Šablony Resource Manageru pro povolení monitorování a konfigurace výstrah u velké sady prostředků
  • Azure Policy pro vynucení různých pravidel pro vaše prostředky Azure Policy pomáhá zajistit, aby tyto prostředky zůstaly v souladu s vašimi firemními standardy a smlouvami o úrovni služeb (SLA).

Použití skupin prostředků Azure ke kombinování prostředků

Typická aplikace v Azure zahrnuje výpočetní prostředky, jako jsou virtuální počítače, Aplikace Azure Service, mikroslužby, clustery Azure Kubernetes Service (AKS) a Azure Service Fabric. Tyto aplikace často závisejí na datech a síťových službách, jako jsou Azure Event Hubs, Azure Storage, Microsoft SQL Database a Azure Service Bus.

V Azure skupina prostředků obsahuje související prostředky Azure. Zkombinujte prostředky ve skupině prostředků, abyste získali plnou pozorovatelnost napříč všemi prostředky, které tvoří vaše různé aplikace. Azure Monitor pro skupiny prostředků poskytuje základní způsob, jak sledovat stav a výkon celé aplikace a umožňuje přejít k podrobnostem o jednotlivých komponentách, abyste mohli řešit potíže se selháními.

Zajištění kvality prostřednictvím průběžného nasazování

CI/CD umožňuje integrovat a nasadit změny kódu do vaší aplikace automaticky na základě výsledků automatizovaného testování. CI/CD zjednodušuje proces nasazení a před změnou do produkčního prostředí ověří kvalitu kódu.

Tady je několik doporučených způsobů, jak zajistit kvalitu během procesu nasazení:

  • Pomocí Azure Pipelines můžete implementovat kanál CI/CD, který automatizuje celý proces, včetně spouštění automatizovaných testů, od okamžiku, kdy potvrdíte kód až do produkčního prostředí.

  • Pomocí bran nasazení můžete přidat monitorování do předpřipravených a po nasazení prostředí.

    Brány nasazení pomáhají zajistit, abyste při přechodu aplikací z vývoje do produkčního prostředí splnili klíčové metriky stavu a výkonu. Brány nasazení také pomáhají zajistit, aby jakékoli rozdíly v prostředí infrastruktury nebo způsob, jakým škálujete, neměly negativní vliv na klíčové ukazatele výkonu.

  • Udržujte samostatné instance monitorování mezi různými prostředími nasazení, jako je vývoj, testování, příprava a produkční prostředí.

    Samostatné instance monitorování pomáhají zajistit, aby všechna shromážděná data byla relevantní napříč aplikacemi a infrastrukturou. Pokud potřebujete korelovat data napříč prostředími, můžete v Průzkumníku metrik použít více diagramů prostředků nebo vytvořit dotazy napříč prostředky v Log Analytics.

Vytváření výstrah, na které můžete reagovat

Abyste měli jistotu, že vaše úsilí o monitorování je účinné, musíte správcům oznámit všechny aktivní problémy a také problémy, které můžete předpovědět. Tady je několik způsobů, jak toho dosáhnout:

  • Vytvářejte výstrahy ve službě Azure Monitor na základě protokolů a metrik pro identifikaci předvídatelných stavů selhání.

    Cílem je zajistit, aby každá výstraha představovala kritickou podmínku, se kterou můžete pracovat. Falešně pozitivní se stane, když monitorování hlásí problém, který ve skutečnosti neexistuje. Dynamické prahové hodnoty můžete použít k automatickému výpočtu směrných plánů u dat metriky místo definování vlastních statických prahových hodnot.

  • Definujte akceprochch

    Mezi dostupné akce pro oznámení patří služba krátkých zpráv (SMS), e-mail, nabízená oznámení nebo hlasové hovory.

  • Pomocí pokročilejších akcí se připojte k nástroji ITSM nebo jiným systémům pro správu výstrah prostřednictvím webhooků.

  • K nápravě podmínek upozornění použijte runbooky nebo webhooky Azure Automation.

  • Automatické škálování můžete použít k dynamické úpravě výpočetních prostředků na základě metrik, které shromažďujete.

Vytváření řídicích panelů a sešitů

Zajištění, aby vaše vývojové a provozní týmy měly přístup ke stejné telemetrii a nástrojům, umožňují jim zobrazit vzory v celém prostředí a minimalizovat střední dobu detekce (MTTD) a střední dobu obnovení (MTTR). Tady je několik způsobů, jak to udělat:

  • Vytvořte vlastní řídicí panely založené na běžných metrikách a protokolech pro různé role ve vaší organizaci.

    Řídicí panely můžou kombinovat data z více prostředků Azure.

  • Vytvářejte sešity Azure Monitoru pro sdílení znalostí mezi vývojovými a provozními týmy.

    Sešit můžete připravit jako dynamickou sestavu, která obsahuje grafy a souhrny protokolů. Vývojáři můžou vytvářet průvodce odstraňováním potíží, který pomáhá zákaznické podpoře nebo operacím řešit problémy.

Nepřetržitá optimalizace

Monitorování je jedním ze základních aspektů oblíbeného sestavení – měření – filozofie učení , která doporučuje nepřetržitě sledovat klíčové ukazatele výkonu a metriky chování uživatelů a pak je optimalizovat prostřednictvím iterativních cvičení plánování. Azure Monitor pomáhá shromažďovat metriky a protokoly, které jsou relevantní pro vaši firmu, a přidat nové datové body v dalším nasazení.

  • Pomocí nástrojů v aplikačním Přehledy můžete sledovat chování a zapojení koncových uživatelů.
  • Analýza dopadu vám pomůže určit prioritu oblastí, na které se zaměřit, aby se zlepšily nejdůležitější klíčové ukazatele výkonu.

Co je Azure Application Insights?

Aplikační Přehledy je služba Řízení výkonu aplikací (APM) pro webové vývojáře. Umožňuje vám provádět tyto úkony:

  • Monitorujte živou webovou aplikaci.
  • Automatické zjišťování anomálií výkonu
  • Diagnostikujte selhání a seznamte se s tím, co uživatelé ve skutečnosti dělají s vaší aplikací.

Aplikační Přehledy funguje s .NET, Node.js, Javou a mnoha dalšími programovacími jazyky a architekturami. Funguje s aplikacemi hostovanými v cloudu nebo místně.

Aplikační Přehledy poskytuje spojovací body, které můžete použít k integraci se stávajícími procesy a nástroji DevOps. Aplikační Přehledy se také integruje se sadou Visual Studio App Center, která umožňuje monitorovat a analyzovat telemetrii z mobilních aplikací.

Jak Application Insights funguje?

Začnete přidáním malého balíčku instrumentace do aplikace. Potom na webu Azure Portal vytvoříte prostředek Přehledy aplikace. Instrumentace monitoruje vaši aplikaci a odesílá telemetrická data zpět do Azure, ke kterým máte přístup z portálu. Mějte na paměti, že vaše aplikace může běžet kdekoli; nemusí být hostovaný v Azure.

Kromě webových aplikací můžete instrumentovat téměř jakýkoli druh komponenty na pozadí. Můžete dokonce instrumentovat javascriptový kód.

Tady je diagram znázorňující tok dat monitorování z živých služeb do aplikačního Přehledy. Aplikace Přehledy pak může posílat výstrahy nebo odesílat data do jiného nástroje, abyste mohli vizualizovat a porozumět trendům.

A diagram that shows the flow of monitoring data from live services into Application Insights.

Můžete také načíst telemetrická data z hostitelských prostředí. Tato data zahrnují čítače výkonu, diagnostiku Azure a protokoly Dockeru. Můžete také nastavit syntetické monitorovací testy. Syntetické monitorování používá sadu transakcí k vyhodnocení výkonu a dostupnosti. Syntetické transakce jsou předvídatelné testy, které umožňují porovnat výsledky z vydání do vydání.

Jaká je s tím spojená režie? Dopad na výkon aplikace je obvykle malý. Sledovací volání nejsou blokovaná a jsou dávková a odesílaná do samostatného vlákna.

Co Application Insights monitoruje?

Aplikační Přehledy pomáhá vývojovým týmům pochopit, jak jejich aplikace funguje a jak se používá.

Monitorování Přehledy aplikací:

  • Frekvence požadavků, doby odezvy a míra selhání.

    Zjistěte, které stránky jsou nejoblíbenější, v jaké denní době a kde jsou vaši uživatelé. Zjistíte, která stránka si vede nejlépe. Podívejte se, jak se doba odezvy a míra selhání porovnávají s úrovněmi provozu.

  • Určuje, jestli vás externí služby zpomalují.

  • Výjimky aplikací.

    Analyzujte agregované statistiky nebo vyberte konkrétní instance a prozkoumejte trasování zásobníku pro související požadavky. Aplikace Přehledy hlásí výjimky, ke kterým dochází na serveru i v klientovi.

  • Výkon načítání webových stránek, jak je uvedeno ve webovém prohlížeči uživatele.

  • Volání AJAX z webových stránek, včetně doby odezvy a míry selhání

  • Počty uživatelů a relací.

  • Čítače výkonu ze serverových počítačů s Windows nebo Linuxem, jako je třeba CPU, paměť a využití sítě.

  • Diagnostika hostitele z Dockeru nebo Azure.

  • Diagnostické protokoly trasování z vaší aplikace To vám umožní korelovat události trasování s požadavky.

  • Vlastní události a metriky, které píšete sami v kódu klienta nebo serveru. Můžete například sledovat události, jako jsou prodané položky nebo hry, které vyhrály.

Kde se zobrazuje telemetrie?

Tady jsou způsoby zobrazení a sledování telemetrických dat:

  • Inteligentní detekce

    Automatické výstrahy se přizpůsobí běžným vzorům telemetrie vaší aplikace a aktivují se, když se stane něco neobvyklého. Můžete také nastavit výstrahy pro konkrétní úrovně vlastních nebo standardních metrik.

    A screenshot showing Smart Detection in Application Insights.

  • Mapa aplikace

    Mapa aplikace pomáhá zjistit kritické body výkonu nebo hlavní místa selhání ve všech komponentách distribuované aplikace.

    A screenshot showing the Application Map in Application Insights.

  • Profiler

    Profiler můžete spustit v aplikacích ASP.NET a ASP.NET Core, které běží ve službě Aplikace Azure, které používají úroveň služby Basic nebo vyšší.

    A screenshot showing the Profiler in Application Insights.

  • Analýza využití

    Tato funkce umožňuje analyzovat segmentaci a uchovávání uživatelů.

    A screenshot showing Usage analysis in Application Insights.

  • Vyhledat

    Hledání vám pomůže najít a prozkoumat jednotlivé položky telemetrie, jako jsou zobrazení stránek, výjimky nebo webové požadavky.

    A screenshot showing Search in Application Insights.

  • Průzkumník metrik

    Průzkumník metrik umožňuje vykreslovat grafy, vizuálně korelovat trendy a zkoumat špičky a poklesy metrik.

    A screenshot showing the Metrics Explorer in Azure Monitor.

  • Stream živé metriky

    Když nasadíte nové sestavení, sledujte indikátory výkonu téměř v reálném čase, abyste měli jistotu, že všechno funguje podle očekávání.

    A screenshot showing the Live Metrics Stream in Application Insights,

  • Log Analytics

    Odpovězte na náročné otázky týkající se výkonu a využití vaší aplikace pomocí výkonného dotazovacího jazyka.

    A screenshot showing the Log Analytics in Azure Monitor.

  • Ladicí program snímků

    Shromážděte snímek ladění z živé webové aplikace.

    A screenshot showing the Snapshot Debugger in Application Insights.

  • Power BI

    Integrujte metriky využití s ostatními funkcemi business intelligence.

    A screenshot showing Power BI.

  • Průběžný export

    Export nezpracovaných dat do úložiště, jakmile dorazí.

    A screenshot showing Continuous Export in Application Insights.

Co je správa IT služeb Připojení or?

IT Service Management Připojení or (ITSMC) pro Azure poskytuje obousměrnou integraci mezi monitorovacími nástroji Azure a vašimi nástroji ITSM, mezi které patří:

  • ServiceNow
  • Provance
  • Cherwell
  • System Center Service Manager

Monitorovací nástroje Azure můžete integrovat s ITSMC do:

  • Vytváření nebo aktualizace pracovních položek v nástrojích ITSM na základě upozornění Azure
  • Přijetí incidentu a žádosti o změnu z nástrojů ITSM do Azure Log Analytics

Nástroje pro monitorování Azure umožňují identifikovat, analyzovat a řešit problémy. Pracovní položky související s problémem se ale obvykle ukládají v nástroji ITSM. Je vhodnější implementovat systém lístků s ITSMC. Díky tomu můžete místo toho, abyste se mezi nástrojem ITSM a nástroji pro monitorování Azure dostali všechny potřebné informace na jednom místě. ITSMC zlepšuje prostředí pro řešení potíží tím, že zkracuje dobu potřebnou k vyřešení problémů.