Aktivera Azure Monitor OpenTelemetry för .NET-, Node.js-, Python- och Java-program
Den här artikeln beskriver hur du aktiverar och konfigurerar OpenTelemetry-baserad datainsamling i Application Insights. The Azure Monitor OpenTelemetry Distro:
- Tillhandahåller en OpenTelemetry-distribution som innehåller stöd för funktioner som är specifika för Azure Monitor.
- Aktiverar automatisk telemetri genom att inkludera OpenTelemetry-instrumentationsbibliotek för insamling av spårningar, mått, loggar och undantag.
- Tillåter insamling av anpassad telemetri.
- Stöder livemått för att övervaka och samla in mer telemetri från webbprogram i produktion.
Mer information om fördelarna med att använda Azure Monitor OpenTelemetry Distro finns i Varför ska jag använda Azure Monitor OpenTelemetry Distro?
Mer information om hur du samlar in data med OpenTelemetry finns i Grunderna för datainsamling eller Vanliga frågor och svar om OpenTelemetry.
OpenTelemetry-versionsstatus
OpenTelemetry-erbjudanden är tillgängliga för .NET-, Node.js-, Python- och Java-program. En funktionsspecifik versionsstatus finns i Vanliga frågor och svar.
Aktivera OpenTelemetry med Application Insights
Följ stegen i det här avsnittet för att instrumentera ditt program med OpenTelemetry. Välj en flik för langaugespecifika instruktioner.
Kommentar
.NET omfattar flera scenarier, inklusive klassiska ASP.NET, konsolappar, Windows Forms (WinForms) med mera.
Förutsättningar
- Azure-prenumeration: Skapa en Azure-prenumeration kostnadsfritt
- Application Insights-resurs: Skapa en Application Insights-resurs
- ASP.NET Core Application med en officiellt stödd version av .NET
Dricks
Om du migrerar från det klassiska API:et för Application Insights kan du läsa vår migreringsdokumentation.
Installera klientbiblioteket
Installera det senaste Azure.Monitor.OpenTelemetry.AspNetCore
NuGet-paketet:
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
Ändra ditt program
Azure.Monitor.OpenTelemetry.AspNetCore
Importera namnområdet, lägg till OpenTelemetry och konfigurera det så att det använder Azure Monitor i din program.cs
klass:
// 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();
Kopiera anslutningssträng från Application Insights-resursen
Anslutningssträng är unik och anger var Azure Monitor OpenTelemetry Distro skickar telemetrin som samlas in.
Dricks
Om du inte redan har en Application Insights-resurs skapar du en som följer den här guiden. Vi rekommenderar att du skapar en ny resurs i stället för att använda en befintlig resurs.
Kopiera anslutningssträng:
- Gå till fönstret Översikt för din Application Insights-resurs.
- Hitta din anslutningssträng.
- Hovra över anslutningssträng och välj ikonen Kopiera till Urklipp.
Klistra in anslutningssträng i din miljö
Om du vill klistra in anslutningssträng väljer du bland följande alternativ:
Viktigt!
Vi rekommenderar att du ställer in anslutningssträng endast via kod i lokala utvecklings- och testmiljöer.
För produktion använder du en miljövariabel eller konfigurationsfil (endast Java).
Ange via miljövariabel rekommenderas -
Ersätt
<Your connection string>
i följande kommando med din anslutningssträng.APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
Ange endast via konfigurationsfilen - Java
Skapa en konfigurationsfil med namnet
applicationinsights.json
och placera den i samma katalog somapplicationinsights-agent-3.6.2.jar
med följande innehåll:{ "connectionString": "<Your connection string>" }
Ersätt
<Your connection string>
i föregående JSON med din unika anslutningssträng.Ange endast via kod - ASP.NET Core, Node.js och Python
Se anslutningssträng konfiguration för ett exempel på hur du ställer in anslutningssträng via kod.
Kommentar
Om du anger anslutningssträng på flera platser prioriteras miljövariabeln i följande ordning:
- Kod
- Miljövariabel
- Konfigurationsfil
Bekräfta att data flödar
Kör programmet och öppna sedan Application Insights i Azure Portal. Det kan ta några minuter innan data visas.
Application Insights är nu aktiverat för ditt program. Följande steg är valfria och tillåter ytterligare anpassning.
Viktigt!
Om du har två eller flera tjänster som genererar telemetri till samma Application Insights-resurs måste du ange molnrollnamn för att representera dem korrekt på programkartan.
Som en del av användningen av Application Insights-instrumentation samlar vi in och skickar diagnostikdata till Microsoft. Dessa data hjälper oss att köra och förbättra Application Insights. Mer information finns i Statsbeat i Azure Application Insights.
Exempelprogram
Azure Monitor OpenTelemetry-exempelprogram är tillgängliga för alla språk som stöds:
- ASP.NET Core-exempelapp
- NET-exempelapp
- Java-exempelappar
- Inbyggda Java GraalVM-exempelappar
- Node.js exempelapp
- Python-exempelappar
Nästa steg
- Mer information om hur du lägger till och ändrar Azure Monitor OpenTelemetry finns i Lägga till och ändra Azure Monitor OpenTelemetry.
- Mer information om hur du konfigurerar OpenTelemetry-distributionen finns i Konfiguration av Azure Monitor OpenTelemetry.
- Information om hur du granskar källkoden finns i Azure Monitor AspNetCore GitHub-lagringsplatsen.
- Om du vill installera NuGet-paketet söker du efter uppdateringar eller visar viktig information på sidan Azure Monitor AspNetCore NuGet-paket .
- Mer information om Azure Monitor och OpenTelemetry finns i Exempelprogrammet för Azure Monitor.
- Mer information om OpenTelemetry och dess community finns i GitHub-lagringsplatsen OpenTelemetry .NET.
- Aktivera webb- eller webbläsaranvändarövervakning för att aktivera användningsupplevelser.
- Om du vill granska vanliga frågor, felsökningssteg, supportalternativ eller för att ge Feedback om OpenTelemetry kan du läsa OpenTelemetry-hjälp, support och feedback för Azure Monitor Application Insights.