Povolení Azure Monitor OpenTelemetry pro aplikace .NET, Node.js, Python a Java

Tento článek popisuje, jak povolit a nakonfigurovat shromažďování dat založených na OpenTelemetry v rámci Azure Monitor Application Insights pomocí distro Azure Monitor OpenTelemetry. OpenTelemetry je open-source standard pro observabilitu od CNCF; Azure Monitor OpenTelemetry Distro je distribuce společnosti Microsoft tohoto standardu, optimalizovaná pro Azure Monitor. Distribuce:

  • Poskytuje distribuci OpenTelemetry, která zahrnuje podporu funkcí specifických pro Azure Monitor.
  • Umožňuje automatické shromažďování telemetrie pomocí instrumentačních knihoven OpenTelemetry pro shromažďování tras, metrik, logů a výjimek.
  • Umožňuje shromažďovat vlastní telemetrii.
  • Podporuje živé metriky pro monitorování a shromažďování telemetrie z živých webových aplikací v produkčním prostředí.

Další informace o výhodách použití Azure Monitor OpenTelemetry Distro naleznete v tématu Proč bych měl použít Azure Monitor OpenTelemetry Distro.

Další informace o shromažďování dat pomocí OpenTelemetry najdete v přehledu Application Insights nebo nejčastějších dotazech k OpenTelemetry.

Postupujte podle kroků v tomto článku a nainstalujte distribuci, připojte ji k prostředku Application Insights a ověřte, že telemetrická data proudí do služby Azure Monitor.

Návod

Koncepční přehled možností OpenTelemetry v Azure Monitoru – nativní příjem OTLP, distribuce Microsoft OpenTelemetry a komplexní prostředí observability – viz OpenTelemetry v Azure Monitoru.

Stav vydání OpenTelemetry

Nabídky OpenTelemetry jsou k dispozici pro aplikace .NET, Node.js, Python a Java. Informace o stavu vydání funkcí podle funkcí najdete v nejčastějších dotazech.

Poznámka:

Pokud pracujete s aplikacemi Azure Functions, přečtěte si téma Použití OpenTelemetry s Azure Functions.

Aktivujte OpenTelemetry pomocí Application Insights

Pomocí kroků v této části instrumentujte aplikaci pomocí OpenTelemetry. Vyberte kartu pro pokyny specifické pro konkrétní jazyk.

Následující tabulka shrnuje balíčky a příkazy pro instalaci pro každý podporovaný jazyk:

Jazyk Package Instalační příkaz
ASP.NET Core Azure.Monitor.OpenTelemetry.AspNetCore dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
platforma .NET Azure.Monitor.OpenTelemetry.Exporter dotnet add package Azure.Monitor.OpenTelemetry.Exporter
Java applicationinsights-agent-3.7.8.jar Download z GitHub
Node.js @azure/monitor-opentelemetry npm install @azure/monitor-opentelemetry
Python azure-monitor-opentelemetry pip install azure-monitor-opentelemetry

Poznámka:

.NET se zabývá několika scénáři, včetně klasických ASP.NET, konzolových aplikací, model Windows Forms (WinForms) a dalších.

Požadavky

Návod

Pokud migrujete ze starších sad Application Insights SDK, prohlédni si naše dokumentace k migraci.

Instalace klientské knihovny

Nainstalujte nejnovější balíček Azure.Monitor.OpenTelemetry.AspNetCoreNuGet:

dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore

Úprava aplikace

Naimportujte obor názvů Azure.Monitor.OpenTelemetry.AspNetCore, přidejte OpenTelemetry a nakonfigurujte ho tak, aby používal Azure Monitor ve třídě program.cs:

// Import the Azure.Monitor.OpenTelemetry.AspNetCore namespace.
using Azure.Monitor.OpenTelemetry.AspNetCore;

var builder = WebApplication.CreateBuilder(args);

// Add OpenTelemetry and configure it to use Azure Monitor.
builder.Services.AddOpenTelemetry().UseAzureMonitor();

var app = builder.Build();

app.Run();

Zkopírujte připojovací řetězec (připojovací řetězec) z prostředku Application Insights

Připojovací řetězec je jedinečný a určuje, kam Azure Monitor OpenTelemetry Distro odesílá telemetrii, kterou shromažďuje.

Návod

Pokud ještě prostředek Application Insights nemáte, vytvořte si ho podle tohoto průvodce. Místo použití existujícího prostředku doporučujeme vytvořit nový prostředek.

Pro zkopírování připojovacího řetězce:

  1. Přejděte do podokna Přehled prostředku Application Insights.
  2. Najděte připojovací řetězec.
  3. Najeďte myší na připojovací řetězec a vyberte ikonu Kopírovat do schránky.

Screenshot zobrazující přehled Application Insights a Connection String.

Vložte připojovací řetězec do prostředí

K vložení připojovací řetězec použijte jednu z následujících metod:

Metoda Podporované jazyky Doporučeno pro:
Proměnná prostředí All Výroba
Konfigurační soubor (applicationinsights.json) Jen Java Produkce (Java)
Code ASP.NET Core, Node.js, Python Pouze místní vývoj/testování

Důležité

Doporučujeme nastavit připojovací řetězec prostřednictvím kódu pouze v místním vývojovém a testovacím prostředí.

V produkčním prostředí použijte proměnnou prostředí nebo konfigurační soubor (pouze Java).

  • Nastavte připojovací řetězec služby Application Insights jako proměnnou prostředí (doporučeno pro produkční prostředí)

    V následujícím příkazu nahraďte <Your připojovací řetězec> svým řetězcem připojení.

    APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
    
  • Nastavte připojovací řetězec služby Application Insights v konfiguračním souboru - Pouze Java

    Vytvořte konfigurační soubor s názvem applicationinsights.jsona umístěte ho do stejného adresáře jako applicationinsights-agent-3.7.8.jar s následujícím obsahem:

    {
      "connectionString": "<Your connection string>"
    }
    

    Nahraďte <Your připojovací řetězec> v předchozím formátu JSON vaším jedinečným připojovacím řetězcem.

  • Nastavení připojovacího řetězce Application Insights v kódu - Pouze pro ASP.NET Core, Node.js a Python

    V části konfigurace řetězce připojení najdete příklad nastavení řetězce připojení prostřednictvím kódu.

Poznámka:

Pokud nastavíte připojovací řetězec na více místech, bude vyřešen v následujícím pořadí priorit (nejvyšší až nejnižší):

  1. Code
  2. Proměnná prostředí
  3. Konfigurační soubor

Potvrzení toku dat

Po konfiguraci distribuce OpenTelemetry pro Azure Monitor a nastavení připojovacího řetězce spusťte aplikaci a otevřete prostředek Application Insights na portálu Azure. Ověřte, že se zobrazují trasování, metriky a protokoly. Zobrazení dat může trvat několik minut.

Snímek obrazovky s kartou Přehled Application Insights se zvýrazněnými žádostmi odeslanými serveru a dobou odezvy serveru.

Application Insights je teď pro vaši aplikaci povolená. Následující kroky jsou volitelné a umožňují další přizpůsobení.

Poznámka:

V rámci instrumentace Application Insights shromažďujeme a odesíláme diagnostická data do Microsoft. Tato data nám pomáhají spouštět a vylepšovat Application Insights. Další informace najdete v nejčastějších dotazech k Application Insights.

Důležité

Pokud máte dvě nebo více služeb, které generují telemetrii do stejného prostředku Application Insights, musíte nastavit názvy cloudových rolí tak, aby je správně představovaly na mapě aplikace.

Řešení potíží, zpětná vazba a podpora

Návod

Následující části jsou k dispozici ve všech článcích o distribuci OpenTelemetry.

Troubleshooting

Zpětná vazba k OpenTelemetry

Poskytnutí zpětné vazby:

Podpora

Vyberte kartu pro jazyk podle vašeho výběru a objevte možnosti podpory.

  • V případě problémů s podporou Azure otevřete podpora Azure ticket.
  • V případě problémů s OpenTelemetry se obraťte přímo na komunitu OpenTelemetry .NET.
  • Seznam otevřených problémů souvisejících s vývozcem Azure Monitor najdete na stránce GitHub Problémy.

Další kroky