Azure Monitor OpenTelemetry inschakelen voor .NET-, Node.js-, Python- en Java-toepassingen

In dit artikel wordt beschreven hoe u gegevensverzameling op basis van OpenTelemetry inschakelt en configureert binnen Azure Monitor Application Insights met behulp van de Azure Monitor OpenTelemetry Distro. OpenTelemetry is de opensource CNCF-waarneembaarheidsstandaard; de Azure Monitor OpenTelemetry Distro is Microsoft distributie van die standaard, geoptimaliseerd voor Azure Monitor. De distributie:

Zie voor meer informatie over de voordelen van het gebruik van de Azure Monitor OpenTelemetry Distro Waarom zou ik de Azure Monitor OpenTelemetry Distro gebruiken.

Raadpleeg het Application Insights-overzicht of de veelgestelde vragen over OpenTelemetry voor meer informatie over het verzamelen van gegevens met behulp van OpenTelemetry.

Volg de stappen in dit artikel om de distributie te installeren, deze te verbinden met uw Application Insights-resource en te controleren of telemetriegegevens naar Azure Monitor stromen.

Aanbeveling

Zie OpenTelemetry met Azure Monitor voor een conceptueel overzicht van de OpenTelemetry-opties in Azure Monitor — systeemeigen OTLP-opname, de Microsoft OpenTelemetry-distributie en end-to-end-observabilityervaringen.

Releasestatus van OpenTelemetry

OpenTelemetry-aanbiedingen zijn beschikbaar voor toepassingen .NET, Node.js, Python en Java. Zie de FAQ voor de status van de functies per release.

Notitie

Zie Use OpenTelemetry with Azure Functions voor Azure Functie-apps.

OpenTelemetry inschakelen met Application Insights

Volg de stappen in deze sectie om uw toepassing te instrumenteren met OpenTelemetry. Selecteer een tabblad voor taalspecifieke instructies.

De volgende tabel bevat een overzicht van de pakketten en installatieopdrachten voor elke ondersteunde taal:

Language Package Opdracht Installeren
ASP.NET Core Azure.Monitor.OpenTelemetry.AspNetCore dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
.NET Azure.Monitor.OpenTelemetry.Exporter dotnet add package Azure.Monitor.OpenTelemetry.Exporter
Java applicationinsights-agent-3.7.8.jar Download van GitHub
Node.js @azure/monitor-opentelemetry npm install @azure/monitor-opentelemetry
Python azure-monitor-opentelemetry pip install azure-monitor-opentelemetry

Notitie

.NET behandelt meerdere scenario's, waaronder klassieke ASP.NET, console-apps, Windows Forms (WinForms) en meer.

Voorwaarden

Aanbeveling

Als u migreert van oudere Application Insights SDK's, raadpleegt u onze migratiedocumentatie.

De clientbibliotheek installeren

Installeer het nieuwste Azure.Monitor.OpenTelemetry.AspNetCoreNuGet-pakket:

dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore

Uw toepassing wijzigen

Importeer de Azure.Monitor.OpenTelemetry.AspNetCore-naamruimte, voeg OpenTelemetry toe en configureer deze om Azure Monitor te gebruiken in de klasse 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();

Kopieer de verbindingsreeks uit uw Application Insights-resource

De verbindingsreeks is uniek en geeft aan waar de Azure Monitor OpenTelemetry Distro de telemetrie verzendt die wordt verzameld.

Aanbeveling

Als u nog geen Application Insights-resource hebt, maakt u er een aan de hand van deze handleiding. U wordt aangeraden een nieuwe resource te maken in plaats van een bestaande resource te gebruiken.

De verbindingsreeks kopiëren:

  1. Ga naar het deelvenster Overzicht van uw Application Insights-resource.
  2. Vind uw verbindingsreeks.
  3. Beweeg de muisaanwijzer over de verbindingsreeks en selecteer het pictogram Kopiëren naar klembord.

Schermopname die het overzicht en de verbindingsreeks van Application Insights toont.

Plak de verbindingstekst in uw technische omgeving.

Gebruik een van de volgende methoden om uw verbindingsreeks te plakken:

Methode Ondersteunde talen Aanbevolen voor
Omgevingsvariabele All Productie
Configuratiebestand (applicationinsights.json) Alleen Java Productie (Java)
Code ASP.NET Core, Node.js, Python Alleen lokaal ontwikkelen/testen

Belangrijk

U wordt aangeraden de verbindingsreeks alleen in lokale ontwikkel- en testomgevingen in te stellen via code.

Gebruik voor productie een omgevingsvariabele of configuratiebestand (alleen Java).

  • Stel de Application Insights-verbindingsreeks in als een omgevingsvariabele (aanbevolen voor productie)

    Vervang <Your verbindingsreeks> in de volgende opdracht door uw verbindingsreeks.

    APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
    
  • Stel de Application Insights-verbindingsreeks in een configuratiebestand in - Alleen Java

    Maak een configuratiebestand met de naam applicationinsights.jsonen plaats het in dezelfde map als applicationinsights-agent-3.7.8.jar met de volgende inhoud:

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

    Vervang <Your verbindingsreeks> in de voorgaande JSON door uw unieke verbindingsstring.

  • Stel de verbindingsreeks van Application Insights in code in - Alleen ASP.NET Core, Node.js en Python

    Zie verbindingsreeks configuratie voor een voorbeeld van het instellen van verbindingsreeks via code.

Notitie

Als u de verbindingsreeks op meerdere plaatsen instelt, wordt deze omgezet in de volgende prioriteitsvolgorde (hoogste naar laagste):

  1. Code
  2. Omgevingsvariabele
  3. Configuratiebestand

Bevestigen dat de gegevens stromen

Nadat u de Azure Monitor OpenTelemetry Distro hebt geconfigureerd en de verbindingsreeks hebt ingesteld, voert u uw toepassing uit en opent u de Application Insights-resource in de Azure-portal om te controleren of traceringen, metrische gegevens en logboeken worden weergegeven. Het kan enkele minuten duren voordat gegevens worden weergegeven.

Schermopname van het tabblad Overzicht van Application Insights met serveraanvragen en reactietijd van de server gemarkeerd.

Application Insights is nu ingeschakeld voor uw toepassing. De volgende stappen zijn optioneel en maken verdere aanpassingen mogelijk.

Notitie

Als onderdeel van het gebruik van Application Insights-instrumentatie verzamelen en verzenden we diagnostische gegevens naar Microsoft. Met deze gegevens kunnen we Application Insights uitvoeren en verbeteren. Meer informatie vindt u in de veelgestelde vragen over Application Insights.

Belangrijk

Als u twee of meer services hebt die telemetrie verzenden naar dezelfde Application Insights-resource, moet u cloudrolnamen instellen om deze correct weer te geven op het toepassingsoverzicht.

Problemen oplossen, feedback en ondersteuning

Aanbeveling

De volgende secties zijn beschikbaar in alle OpenTelemetry Distro-artikelen.

Troubleshooting

OpenTelemetry Terugkoppeling

Feedback geven:

Support

Selecteer een tabblad voor de taal van uw keuze om ondersteuningsopties te ontdekken.

Volgende stappen