Partager via


Activer Azure Monitor OpenTelemetry pour les applications .NET, Node.js, Python et Java

Cet article explique comment activer et configurer la collecte de données basée sur OpenTelemetry dans Azure Monitor Application Insights. La distribution Azure Monitor OpenTelemetry :

  • Fournit une distribution OpenTelemetry qui inclut la prise en charge des fonctionnalités spécifiques à Azure Monitor.
  • Active la télémétrie automatique en incluant les bibliothèques d’instrumentation OpenTelemetry pour collecter des traces, des mesures, des logs et des exceptions.
  • Permet de collecter des données de télémétrie personnalisées .
  • Prend en charge les métriques en direct pour surveiller et collecter les données de télémétrie à partir d’applications web actives en production.

Pour plus d’informations sur les avantages de l’utilisation de la distribution OpenTelemetry Azure Monitor, consultez Why dois-je utiliser la distribution OpenTelemetry Azure Monitor.

Pour en savoir plus sur la collecte de données à l’aide d’OpenTelemetry, consultez Collect OpenTelemetry (OTel) pour les expériences Application Insights ou le FAQ OpenTelemetry.

Statut de publication d’OpenTelemetry

Les offres OpenTelemetry sont disponibles pour les applications .NET, Node.js, Python et Java. Pour connaître le statut de chaque fonctionnalité, consultez la FAQ.

Remarque

Pour Azure Function Apps, consultez Use OpenTelemetry avec Azure Functions.

Activer OpenTelemetry avec Application Insights

Suivez les étapes de cette section pour instrumenter votre application avec OpenTelemetry. Sélectionnez un onglet pour obtenir des instructions spécifiques à la langue.

Remarque

.NET couvre plusieurs scénarios, notamment les ASP.NET classiques, les applications console, les Windows Forms (WinForms), etc.

Prérequis

  • application ASP.NET Core à l’aide d’une version officiellement prise en charge de .NET

Conseil

Si vous effectuez une migration à partir de l’API Classique Application Insights, consultez notre documentation de migration.

Installer la bibliothèque de client

Installez le dernier package Azure.Monitor.OpenTelemetry.AspNetCoreNuGet :

dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore 

Modifier votre application

Importez l’espace de noms Azure.Monitor.OpenTelemetry.AspNetCore, ajoutez OpenTelemetry et configurez-le pour utiliser Azure Monitor dans votre 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();

Copier le chaîne de connexion à partir de votre ressource Application Insights

La chaîne de connexion est unique et spécifie où la distribution OpenTelemetry de Azure Monitor envoie les données de télémétrie qu’elle collecte.

Conseil

Si vous n’avez pas encore de ressource Application Insights, créez-en un suivant ce guide. Nous vous recommandons de créer une ressource plutôt que d’utiliser une ressource existante.

Pour copier le chaîne de connexion :

  1. Accédez au volet Vue d’ensemble de votre ressource Application Insights.
  2. Recherchez votre chaîne de connexion.
  3. Pointez sur la chaîne de connexion et sélectionnez l’icône Copier dans le Presse-papiers.

Screenshot qui montre la vue d’ensemble d’Application Insights et chaîne de connexion.

Collez la "chaîne de connexion" dans votre environnement

Pour coller votre chaîne de connexion, sélectionnez les options suivantes :

Important

Nous vous recommandons de définir le chaîne de connexion via du code uniquement dans les environnements de développement et de test locaux.

Pour la production, utilisez une variable d’environnement ou un fichier de configuration (Java uniquement).

  • Définir via une variable d’environnementrecommandé

    Remplacez <Your chaîne de connexion> dans la commande suivante par votre chaîne de connexion.

    APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
    
  • Set via le fichier de configuration - Java uniquement

    Créez un fichier de configuration nommé , puis placez-le dans le même répertoire que , avec le contenu suivant :

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

    Remplacez <Your chaîne de connexion> dans le code JSON précédent par votre chaîne de connexion unique.

  • Set via code - ASP.NET Core, Node.js et Python uniquement

    Consultez chaîne de connexion configuration pour obtenir un exemple de définition de chaîne de connexion via du code.

Remarque

Si vous définissez l’chaîne de connexion à plusieurs emplacements, la variable d’environnement est hiérarchisée dans l’ordre suivant :

  1. Code
  2. Variable d’environnement
  3. Fichier de configuration

Confirmer que les données circulent

Exécutez votre application, puis ouvrez Application Insights dans le portail Azure. L’affichage des données peut prendre quelques minutes.

Capture d’écran de l’onglet Vue d’ensemble d’Application Insights avec les demandes de serveur et le temps de réponse du serveur mis en surbrillance.

Application Insights est maintenant activé pour votre application. Les étapes suivantes sont facultatives et permettent une personnalisation supplémentaire.

Important

Si vous avez deux services ou plus qui émettent des données de télémétrie vers la même ressource Application Insights, vous devez définir les noms de rôles cloud pour les représenter correctement sur la carte d’application.

Dans le cadre de l’utilisation de l’instrumentation Application Insights, nous collectons et envoyons des données de diagnostic à Microsoft. Ces données nous permettent d’exécuter et d’améliorer Application Insights. Pour plus d’informations, consultez Statsbeat dans Azure Application Insights.

Exemples d’applications

Les exemples d’applications OpenTelemetry Azure Monitor sont disponibles pour toutes les langues supportées.

Étapes suivantes