Sdílet prostřednictvím


Příklad: Použití OpenTelemetry se službou Azure Monitor a Application Insights

Existuje mnoho komerčních systémů pro správu výkonu aplikací (APM), ze kterých si můžete vybrat. Primárním produktem pro monitorování aplikací v Azure je Application Insights, což je součást služby Azure Monitor. Jednou z výhod integrovaného produktu APM je, že může korelovat různé zdroje dat pozorovatelnosti. Application Insights má bohaté možnosti zobrazení a analýzy.

1. Přidání distribuce Application Insights

Aby bylo ASP.NET prostředí se službou Azure Monitor jednodušší, je k dispozici balíček obálky (označovaný jako Distro v OTel parlance), který většinu náročné konfigurace OpenTelemetry provádí.

Tento příklad vychází z návodu OTLP. Postupujte podle kroků 1 až 5 a vytvořte kód aplikace pomocí vývozce OTLP. V tomto příkladu rozšíříme kód tak, aby odesílal data do Application Insights.

Proveďte stejný projekt z kroku 5 a přidejte následující balíček NuGet:

<ItemGroup>
  <PackageReference Include="Azure.Monitor.OpenTelemetry.AspNetCore" Version="1.3.0-beta.1" />
</ItemGroup>

Poznámka:

Nahraďte verzi nejnovější dostupnou verzí.

2. Nastavení vývozce

Před přidejte následující inicializační kód builder.Build();OTel:

if (!string.IsNullOrEmpty(builder.Configuration["APPLICATIONINSIGHTS_CONNECTION_STRING"]))
{
    otel.UseAzureMonitor();
}

UseAzureMonitor() je magie, která přidá společné knihovny instrumentace a exportéry pro Application Insights. Stačí do registrace přidat vlastní Meter jména a ActivitySource jména.

Stejné inicializace OTel funguje pro OTLP jako pro Application Insights, rozdíl je, který exportér vyberete. Obě můžete použít ve stejné aplikaci a vybrat mezi nimi definováním vhodných proměnných prostředí.

3. Zadejte připojovací řetězec

Pokud ještě nejste zákazníkem Azure, můžete si vytvořit bezplatný účet na adrese https://azure.microsoft.com/free/. Přihlaste se k webu Azure Portal a buď vyberte existující prostředek Application Insights, nebo vytvořte nový.https://ms.portal.azure.com/#create/Microsoft.AppInsights

Application Insights identifikuje, která instance se má použít k ukládání a zpracování dat prostřednictvím instrumentačního klíče a připojovací řetězec, které se nacházejí v pravém horním rohu uživatelského rozhraní portálu.

Připojovací řetězec na webu Azure Portal

Pokud používáte službu Aplikace Azure Service, tato připojovací řetězec se automaticky předá aplikaci jako proměnná prostředí. V případě jiných služeb nebo při místním spuštění je potřeba ji předat pomocí APPLICATIONINSIGHTS_CONNECTION_STRING proměnné prostředí nebo v appsettings.json. Pro místní spuštění je nejjednodušší přidat hodnotu do appsettings.development.json:

"AzureMonitor": {
    "ConnectionString": "InstrumentationKey=12345678-abcd-abcd-abcd-12345678..."
}

Poznámka:

Nahraďte hodnotu hodnotou z vaší instance.

4. Prozkoumání aplikace v Application Insights

Při spuštění aplikace se telemetrie odešle do Application Insights. Teď byste měli získat protokoly, metriky a distribuované trasování pro vaši aplikaci. Na webu Azure Portal otevřete prostředek Application Insights.

Protokoly

Zobrazení protokolů App Insights

Metriky

Zobrazení metrik App Insights

Distribuované trasování

Zobrazení transakcí App Insights