Abilitare OpenTelemetry di Monitoraggio di Azure per applicazioni .NET, Node.js, Python e Java
Questo articolo descrive come abilitare e configurare la raccolta dati basata su OpenTelemetry in Application Insights. La distribuzione OpenTelemetry di Monitoraggio di Azure:
- Fornisce una distribuzione OpenTelemetry che include il supporto per le funzionalità specifiche di Monitoraggio di Azure,
- Abilita la telemetria automatica includendo librerie di strumentazione OpenTelemetry per raccogliere tracce, metriche, log ed eccezioni.
- Consente di raccogliere dati di telemetria personalizzati.
- Supporta metriche attive per monitorare e raccogliere altri dati di telemetria dalle applicazioni Web in produzione attive.
Per altre informazioni sui vantaggi dell'uso della distribuzione OpenTelemetry di Monitoraggio di Azure, vedere Perché usare la distribuzione di OpenTelemetry di Monitoraggio di Azure.
Per altre informazioni sulla raccolta di dati con OpenTelemetry, vedere Informazioni di base sulla raccolta dati o Domande frequenti su OpenTelemetry.
Stato versione OpenTelemetry
Le offerte OpenTelemetry sono disponibili per le applicazioni .NET, Node.js, Python e Java. Per uno stato di release funzionalità per funzionalità, vedere le domande frequenti.
Abilitare OpenTelemetry con Application Insights
Seguire la procedura descritta in questa sezione per instrumentare l'applicazione con OpenTelemetry. Selezionare una scheda per istruzioni specifiche del linguaggio.
Nota
.NET include più scenari, tra cui ASP.NET classiche, app console, Windows Form (WinForms) e altro ancora.
Prerequisiti
- Sottoscrizione di Azure - Creare una sottoscrizione di Azure gratuita
- Risorsa di Application Insights: creare una risorsa di Application Insights
- Applicazione ASP.NET Core usando una versione ufficialmente supportata di .NET
Suggerimento
Se si esegue la migrazione dall'API classica di Application Insights, vedere la documentazione sulla migrazione.
Installare la libreria client
Installare il pacchetto NuGet Azure.Monitor.OpenTelemetry.AspNetCore
più recente:
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
Modificare l'applicazione
Importare lo spazio dei nomi Azure.Monitor.OpenTelemetry.AspNetCore
, aggiungere OpenTelemetry e configurarlo per l'uso di Monitoraggio di Azure nella classe 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();
Copiare la stringa di connessione dalla risorsa di Application Insights
La stringa di connessione è univoca e specifica dove la distribuzione OpenTelemetry di Monitoraggio di Azure invia i dati di telemetria raccolti.
Suggerimento
Se non si ha già una risorsa di Application Insights, crearne una seguendo questa guida. È consigliabile creare una nuova risorsa anziché usarne una esistente.
Per copiare la stringa di connessione:
- Passare al riquadro Panoramica della risorsa di Application Insights.
- Trovare la stringa di connessione.
- Passare il puntatore del mouse sulla stringa di connessione e selezionare l'icona Copia negli Appunti.
Incollare la stringa di connessione nell'ambiente
Per incollare la stringa di connessione, selezionare una delle opzioni seguenti:
Importante
È consigliabile impostare la stringa di connessione tramite codice solo in ambienti di sviluppo e test locali.
Per la produzione, usare una variabile di ambiente o un file di configurazione (solo Java).
Impostare tramite variabile di ambiente - scelta consigliata
Sostituire
<Your connection string>
nel comando seguente con la stringa di connessione univoca.APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
Impostare tramite il file di configurazione - Solo Java
Creare un file di configurazione denominato
applicationinsights.json
e inserirlo nella stessa directory diapplicationinsights-agent-3.6.2.jar
con il contenuto seguente:{ "connectionString": "<Your connection string>" }
Sostituire
<Your connection string>
nel codice JSON precedente con la stringa di connessione univoca.Impostare tramite codice - Solo ASP.NET Core, Node.js e Python
Per un esempio di impostazione della stringa di connessione tramite codice, vedere Configurazione della stringa di connessione.
Nota
Se si imposta la stringa di connessione in più posizioni, la variabile di ambiente verrà assegnata in ordine di priorità nell'ordine seguente:
- Codice
- Variabile di ambiente
- File di configurazione
Verificare che i dati vengano trasmessi
Eseguire l'applicazione, quindi aprire Application Insights nel portale di Azure. La visualizzazione dei dati potrebbe richiedere alcuni minuti.
Application Insights è ora abilitato per l'applicazione. I passaggi seguenti sono facoltativi e consentono ulteriori personalizzazioni.
Importante
Se si dispone di due o più servizi che generano dati di telemetria nella stessa risorsa di Application Insights, è necessario impostare i nomi dei ruoli cloud per rappresentarli correttamente nella mappa delle applicazioni.
Nell'ambito dell'uso della strumentazione di Application Insights, vengono raccolti e inviati dati di diagnostica a Microsoft. Questi dati consentono di eseguire e migliorare Application Insights. Per altre informazioni, vedere Statsbeat in Azure Application Insights.
Applicazioni di esempio
Le applicazioni di esempio OpenTelemetry di Monitoraggio di Azure sono disponibili per tutte le lingue supportate:
- App di esempio ASP.NET Core
- App di esempio NET
- App di esempio Java
- App di esempio native Java GraalVM
- App di esempio Node.js
- App di esempio Python
Passaggi successivi
- Per informazioni dettagliate sull'aggiunta e la modifica di OpenTelemetry di Monitoraggio di Azure, vedere Aggiungere e modificare OpenTelemetry di Monitoraggio di Azure.
- Per configurare ulteriormente la distribuzione di OpenTelemetry, vedere Configurazione di OpenTelemetry di Monitoraggio di Azure.
- Per esaminare il codice sorgente, vedere il repository GitHub AspNetCore di Monitoraggio di Azure.
- Per installare il pacchetto NuGet, verificare la disponibilità di aggiornamenti o visualizzare le note sulla versione, vedere la pagina Pacchetto NuGet AspNetCore di Monitoraggio di Azure.
- Per acquisire familiarità con Monitoraggio di Azure e OpenTelemetry, vedere l'applicazione di esempio di Monitoraggio di Azure.
- Per altre informazioni su OpenTelemetry e sulla relativa community, vedere il repository GitHub .NET OpenTelemetry.
- Per abilitare le esperienze di utilizzo, abilitare il monitoraggio degli utenti Web o browser.
- Per esaminare le domande frequenti, i passaggi per la risoluzione dei problemi, le opzioni di supporto o per fornire commenti e suggerimenti su OpenTelemetry, vedere La Guida, il supporto e il feedback di OpenTelemetry per Application Insights di Monitoraggio di Azure.