Sdílet prostřednictvím


Živé metriky: Monitorování a diagnostika s latencí 1 sekundy

Monitorujte živou produkční webovou aplikaci pomocí živých metrik (označovaných také jako QuickPulse) z Application Insights. Můžete vybrat a filtrovat metriky a čítače výkonu a sledovat je v reálném čase, aniž by to vaše služba rušily. Trasování zásobníku můžete také zkontrolovat z ukázkových neúspěšných požadavků a výjimek. Spolu s Profilerem a Snapshot Debugger poskytují živé metriky výkonný a neinvasivní diagnostický nástroj pro váš živý web.

Poznámka:

Živé metriky podporují pouze protokol TLS 1.2. Další informace naleznete v tématu Poradce při potížích.

S živými metrikami můžete:

  • Ověřte opravu, když je vydaná, sledováním počtu výkonu a selhání.
  • Sledujte vliv testovacích zatížení a diagnostikujte problémy živě.
  • Zaměřte se na konkrétní testovací relace nebo vyfiltrujte známé problémy tak, že vyberete a vyfiltrujete metriky, které chcete sledovat.
  • Získejte trasování výjimek, když k nim dojde.
  • Experimentujte s filtry a najděte nejrelevavantnější klíčové ukazatele výkonu.
  • Monitorujte všechny čítače výkonu Windows živě.
  • Snadno identifikujte server, u kterého dochází k problémům, a vyfiltrujte všechny klíčové ukazatele výkonu a živé kanály jenom na tento server.

Snímek obrazovky znázorňující kartu živé metriky

Živé metriky se v současné době podporují pro aplikace ASP.NET, ASP.NET Core, Azure Functions, Java a Node.js.

Poznámka:

Počet monitorovaných instancí serveru zobrazených živými metrikami může být nižší než skutečný počet instancí přidělených pro aplikaci. Tato neshoda je způsobená tím, že mnoho moderních webových serverů uvolní aplikace, které nebudou přijímat požadavky za určité časové období, aby ušetřily prostředky. Vzhledem k tomu, že živé metriky počítají pouze servery, na kterých je aplikace aktuálně spuštěná, nebudou servery, které už proces nenačetly, zahrnuté do celkového součtu.

Začínáme

Důležité

Pokud chcete povolit Application Insights, ujistěte se, že je aktivovaná na webu Azure Portal a že vaše aplikace používá nejnovější verzi balíčku NuGet Pro Azure Monitor OpenTelemetry nebo Classic Application Insights . Bez balíčku NuGet se do Application Insights odešle nějaká telemetrie, ale tato telemetrie se v podokně živých metrik nezobrazí.

  1. Pokud chcete povolit živé metriky, postupujte podle pokynů pro konkrétní jazyk:
  • ASP.NET: Nepodporuje se.
  • ASP.NET Core: Ve výchozím nastavení je povoleno.
  • Java: Ve výchozím nastavení je povolená.
  • Node.js: Ve výchozím nastavení je povoleno.
  • Python: Předat enable_live_metrics=True do configure_azure_monitor. Další informace najdete v dokumentaci k distribuci OpenTelemetry pro Azure Monitor.
  1. Na webu Azure Portal otevřete prostředek Application Insights pro vaši aplikaci. Vyberte Živé metriky, které jsou uvedené v části Prošetření v nabídce vlevo.

  2. Zabezpečte řídicí kanál , pokud v filtrech můžete používat citlivá data, jako jsou jména zákazníků.

Poznámka:

Podpora příjmu dat založeného na instrumentačním klíči skončí 31. března 2025. Příjem klíčů instrumentace bude dál fungovat, ale už nebudeme poskytovat aktualizace ani podporu pro tuto funkci. Přechod na připojovací řetězec, abyste mohli využívat nové funkce.

Jak se živé metriky liší od Průzkumníka metrik a Log Analytics?

Možnosti Live Stream Průzkumník metrik a Log Analytics
Latence Data zobrazená během jedné sekundy. Agregováno během několika minut.
Bez uchovávání Data se zachovají, i když jsou v grafu, a pak se zahodí. Data se uchovávají po dobu 90 dnů.
Na vyžádání Data se streamují jenom v době, kdy je otevřené podokno živých metrik. Data se odesílají vždy, když je sada SDK nainstalovaná a povolená.
Bezplatný Za data live streamu se neúčtují žádné poplatky. Na základě cen.
Vzorkování Všechny vybrané metriky a čítače se přenesou. Vzorkují se chyby a trasování zásobníku. Události lze vzorkovat.
Řídicí kanál Do sady SDK se odesílají řídicí signály filtru. Doporučujeme tento kanál zabezpečit. Komunikace je jedním ze způsobů, jak na portál.

Výběr a filtrování metrik

Tyto funkce jsou k dispozici pro ASP.NET, ASP.NET Core a Azure Functions (v2).

Vlastní klíčový ukazatel výkonu můžete monitorovat živě tak, že na portálu použijete libovolné filtry pro libovolnou telemetrii Application Insights. Vyberte ovládací prvek filtru, který se zobrazí při najetí myší na některý z grafů. Následující graf vykreslí klíčový ukazatel výkonu počtu požadavků s filtry na atributech URL a Duration. Ověřte filtry pomocí oddílu náhledu streamu, který zobrazuje živý kanál telemetrie, který odpovídá kritériím zadaným v libovolném okamžiku.

Snímek obrazovky znázorňující frekvenci požadavků filtru

Můžete monitorovat jinou hodnotu než Count. Možnosti závisí na typu datového proudu, což může být jakákoli telemetrie Application Insights, jako jsou požadavky, závislosti, výjimky, trasování, události nebo metriky. Může to být také vaše vlastní měření.

Snímek obrazovky znázorňující Tvůrce dotazů na frekvenci požadavků s vlastní metrikou

Spolu s telemetrií Application Insights můžete také monitorovat jakýkoli čítač výkonu Windows. Vyberte ho z možností datového proudu a zadejte název čítače výkonu.

Živé metriky se agregují ve dvou bodech: místně na každém serveru a pak na všech serverech. Výchozí nastavení můžete změnit v obou z nich výběrem dalších možností v příslušných rozevíracích seznamech.

Ukázková telemetrie: Vlastní živé diagnostické události

Ve výchozím nastavení živý kanál událostí zobrazuje ukázky neúspěšných požadavků a volání závislostí, výjimek, událostí a trasování. Výběrem ikony filtru zobrazíte použitá kritéria v libovolném okamžiku.

Snímek obrazovky znázorňující tlačítko Filtr

Stejně jako u metrik můžete pro libovolný typ telemetrie Application Insights zadat libovolná kritéria. V tomto příkladu vybíráme konkrétní selhání a události požadavků.

Snímek obrazovky znázorňující Tvůrce dotazů

Poznámka:

V současné době pro kritéria na základě zpráv o výjimce použijte vnější zprávu o výjimce. Pokud chcete v předchozím příkladu vyfiltrovat neškodnou výjimku se zprávou vnitřní výjimky (řídí se< oddělovačem --) "Klient odpojen", použijte zprávu, která neobsahuje kritéria "Chyba čtení obsahu požadavku".

Pokud chcete zobrazit podrobnosti o položce v živém kanálu, vyberte ji. Informační kanál můžete pozastavit tak, že vyberete Pozastavit nebo se posunete dolů a vyberete položku. Živý informační kanál se obnoví, jakmile se posunete zpět na začátek nebo když vyberete čítač položek shromážděných během pozastavení.

Snímek obrazovky znázorňující okno Ukázková telemetrie s vybranou výjimkou a podrobnostmi o výjimce zobrazenými v dolní části okna

Filtrování podle instance serveru

Pokud chcete monitorovat konkrétní instanci role serveru, můžete filtrovat podle serveru. Chcete-li filtrovat, vyberte název serveru v části Servery.

Snímek obrazovky znázorňující ukázkové živé selhání

Zabezpečení řídicího kanálu

Vlastní filtry živých metrik umožňují řídit, která telemetrie vaší aplikace se streamuje do podokna živých metrik na webu Azure Portal. Kritéria filtrů se odesílají do aplikací instrumentovaných pomocí sady Application Insights SDK. Hodnota filtru může potenciálně obsahovat citlivé informace, například ID zákazníka. Chcete-li zachovat tuto hodnotu zabezpečenou a zabránit potenciálnímu zpřístupnění neoprávněných aplikací, zabezpečte kanál živých metrik pomocí ověřování Microsoft Entra.

Poznámka:

K 30. září 2025 budou vyřazeny klíče rozhraní API používané ke streamování telemetrie ze živých metrik do Application Insights. Po tomto datu nebudou aplikace, které používají klíče rozhraní API, do vašeho prostředku Application Insights odesílat živá data metrik. Ověření příjmu telemetrie pro streamování živých metrik do Application Insights bude potřeba provést s ověřováním Microsoft Entra pro Application Insights.

Je možné vyzkoušet vlastní filtry, aniž byste museli nastavovat ověřený kanál. Vyberte některou z ikon filtru a povolte připojené servery. Pokud zvolíte tuto možnost, musíte autorizovat připojené servery po každé nové relaci nebo kdykoli je nový server online.

Upozorňující

Důrazně nedoporučujeme používat nezabezpečené kanály a tuto možnost zakážeme šest měsíců poté, co ji začnete používat. Dialogové okno Autorizovat připojené servery zobrazuje datum, po kterém bude tato možnost zakázaná.

Snímek obrazovky s dialogovým oknem Autorizovat připojené servery

Tabulka podporovaných funkcí

Jazyk Základní metriky Metriky výkonu Vlastní filtrování Ukázková telemetrie Rozdělení procesoru podle procesu
.NET Framework Podporováno (LTS) Podporováno (LTS) Podporováno (LTS) Podporováno (LTS) Podporováno (LTS)
.NET Core (target=.NET Framework) Podporováno (LTS) Podporováno (LTS) Podporováno (LTS) Podporováno (LTS) Podporováno (LTS)
.NET Core (target=.NET Core) Podporováno (LTS) Podporuje se* Podporováno (LTS) Podporováno (LTS) Nepodporováno
Azure Functions v2 Podporováno Podporováno Podporováno Podporováno Nepodporováno
Java Podporováno (V2.0.0+) Podporováno (V2.0.0+) Nepodporováno Podporováno (V3.2.0+) Nepodporováno
Node.js Podporováno (V1.3.0+) Podporováno (V1.3.0+) Nepodporováno Podporováno (V1.3.0+) Nepodporováno
Python Podporováno (distribuce verze 1.6.0+) Nepodporováno Nepodporováno Nepodporováno Nepodporováno

Mezi základní metriky patří požadavek, závislost a míra výjimek. Metriky výkonu (čítače výkonu) zahrnují paměť a procesor. Ukázková telemetrie zobrazuje datový proud s podrobnými informacemi o neúspěšných požadavcích a závislostech, výjimkách, událostech a trasování.

Podpora perfCounters se mírně liší v různých verzích .NET Core, které necílí na rozhraní .NET Framework:

  • Metriky perfCounters se podporují při spuštění ve službě Aplikace Azure pro Windows (ASP.NET Core SDK verze 2.4.1 nebo vyšší).
  • Funkce PerfCounters se podporuje, když je aplikace spuštěná na jakémkoli počítači s Windows pro aplikace, které cílí na .NET Core LTS nebo vyšší.
  • Funkce PerfCounters se podporuje, když je aplikace spuštěná kdekoli (například Linux, Windows, App Service pro Linux nebo kontejnery), ale jenom pro aplikace, které cílí na .NET Core LTS nebo vyšší.

Řešení problému

Živé metriky používají různé IP adresy než jiné telemetrie Application Insights. Ujistěte se, že jsou tyto IP adresy otevřené ve vaší bráně firewall. Zkontrolujte také, jestli jsou odchozí porty pro živé metriky otevřené v bráně firewall vašich serverů.

Jak je popsáno v oznámení migrace Azure TLS 1.2, metriky za provozu teď podporují pouze protokol TLS 1.2. Pokud používáte starší verzi protokolu TLS, podokno živých metrik nezobrazuje žádná data. U aplikací založených na rozhraní .NET Framework 4.5.1 najdete v tématu Povolení protokolu TLS (Transport Layer Security) 1.2 v klientech – Configuration Manager pro podporu novější verze protokolu TLS.

Chybějící konfigurace pro .NET

  1. Ověřte, že používáte nejnovější verzi balíčku NuGet Microsoft.ApplicationInsights.PerfCounterCollector.

  2. ApplicationInsights.config Upravte soubor:

    • Ověřte, že připojovací řetězec odkazuje na prostředek Application Insights, který používáte.
    • QuickPulseTelemetryModule Vyhledejte možnost konfigurace. Pokud tam není, přidejte ho.
    • QuickPulseTelemetryProcessor Vyhledejte možnost konfigurace. Pokud tam není, přidejte ho.
    <TelemetryModules>
    <Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.
    QuickPulse.QuickPulseTelemetryModule, Microsoft.AI.PerfCounterCollector"/>
    </TelemetryModules>
    
    <TelemetryProcessors>
    <Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.
    QuickPulse.QuickPulseTelemetryProcessor, Microsoft.AI.PerfCounterCollector"/>
    </TelemetryProcessors>
    
  3. Restartujte aplikaci.

Stavová zpráva Data jsou dočasně nepřístupná

Při přechodu na živé metriky se může zobrazit banner se stavovou zprávou: Data jsou dočasně nepřístupná. Aktualizace o našem stavu jsou publikovány zde https://aka.ms/aistatus "

Postupujte podle odkazu na stránku stavu Azure a zkontrolujte, jestli nedošlo k výpadku aktivace, který má vliv na Application Insights. Ověřte, že brány firewall a rozšíření prohlížeče neblokují přístup k živým metrikám, pokud k výpadku nestává. Například některá oblíbená rozšíření ad-blocker blokují připojení k *.monitor.azure.com. Pokud chcete použít úplné možnosti živých metrik, buď zakažte rozšíření ad-blockeru, nebo přidejte pravidlo vyloučení pro doménu *.livediagnostics.monitor.azure.com do vašeho nástroje pro blokování reklam, bránu firewall atd.

Neočekávaný velký počet požadavků na livediagnostics.monitor.azure.com

Sady Application Insights SDK používají rozhraní REST API ke komunikaci s koncovými body QuickPulse, které poskytují živé metriky pro vaši webovou aplikaci. Ve výchozím nastavení se sady SDK každých pět sekund dotazují na koncové body a kontrolují, jestli se na webu Azure Portal zobrazuje podokno živých metrik.

Pokud otevřete živé metriky, sady SDK přepnou do režimu s vyšší frekvencí a každou sekundu odešlou nové metriky do quickPulse. To vám umožní monitorovat a diagnostikovat živou aplikaci s latencí 1 sekundy, ale také generovat další síťový provoz. Pokud chcete obnovit normální tok provozu, naviage pryč z podokna živých metrik.

Poznámka:

Application Insights nesledují volání rozhraní REST API provedená sadami SDK pro koncové body QuickPulse a neovlivňují volání závislostí ani jiné metriky. Můžete je ale vidět v jiných nástrojích pro monitorování sítě.

Další kroky