Configuration de fonctionnalités supplémentaires pour la surveillance d'.NET

Configuration des en-têtes de corrélation des traces d' Kafka

Pour configurer le format des en-têtes de corrélation de trace d' Kafka, définissez la INSTANA_KAFKA_HEADER_FORMAT variable d'environnement sur binary, string, ou both. INSTANA_KAFKA_TRACE_CORRELATION=falseNe désactivez pas complètement la corrélation des traces d' Kafka.

Une autre solution consiste à configurer les options de corrélation des traces d' Kafka s au niveau de l 'agent hôte Instana.

Pour plus d'informations, consultez la section « Migration des en-têtes » sur Kafka.

Ignorer les processus

Pour désactiver la surveillance de certains processus dans l' Windows, procédez comme suit :

  1. Ajoutez la INSTANA_REWRITER_BACKOFF variable d'environnement au niveau de l'hôte.
  2. Définissez sa valeur sur une liste de noms de pools ou de processus séparés par des points-virgules, comme le montre l'exemple suivant :
    INSTANA_REWRITER_BACKOFF=my_pool_1;process_1;my_pool_2
  3. Redémarrez les services IIS à l'aide de la iisreset commande afin qu'IIS puisse charger un nouvel environnement.

Procédures de mise sur liste blanche

Vous pouvez configurer Instana pour qu'il ne surveille que certains processus spécifiques en utilisant la fonctionnalité de liste blanche. Une fois la liste blanche configurée, seuls les processus correspondant aux modèles spécifiés sont instrumentés pour le traçage. Tous les autres processus sont exclus.

La fonctionnalité de liste blanche utilise des expressions régulières insensibles à la casse et prend en charge les valeurs séparées par des points-virgules, ce qui vous permet de définir plusieurs modèles pour une correspondance flexible des processus.

Pour activer la liste blanche pour certains processus, procédez comme suit :

  1. Ajoutez la INSTANA_NET_WHITELIST variable d'environnement au niveau de l'hôte.
  2. Définissez sa valeur sous la forme d'une liste de noms de processus ou de modèles d'expressions régulières séparés par des points-virgules, comme le montre l'exemple suivant :
    INSTANA_NET_WHITELIST="^(weBapi|cORe).*;customerService;myApp.dll"

    où :

    • ^(weBapi|cORe).* correspond aux processus commençant par webapi ou core (sans distinction de majuscules/minuscules). Ce modèle utilise des ancrages et des caractères génériques d'expressions régulières pour correspondre à plusieurs applications associées.
    • customerService effectue une recherche sans distinction de majuscules/minuscules parmi les noms de fichiers de processus commençant par customerService. Par exemple, cela correspond à CustomerService.dll ou customerServiceAPI.dll.
    • myApp.dll correspond à l'application spécifique avec le nom complet et l'extension du fichier.
  3. Redémarrez l'application pour que la variable d'environnement prenne effet.

Une fois la liste blanche configurée, le profileur vérifie, lors de l'initialisation, que chaque processus correspond aux modèles de la liste blanche. Seuls les processus qui correspondent à au moins un modèle sont instrumentés. Si aucune correspondance n'est trouvée, le profileur se ferme sans se connecter au processus.

La fonctionnalité de liste blanche est particulièrement utile dans les environnements où vous souhaitez :

  • Réduire la charge système en surveillant uniquement les applications critiques
  • Isoler certains services à des fins de surveillance
  • Exclure les processus hors production ou de test du suivi
Remarque : si la INSTANA_NET_WHITELIST variable d'environnement n'est pas définie ou est vide, tous les processus peuvent faire l'objet d'un traçage (sous réserve des règles de liste noire configurées avec INSTANA_REWRITER_BACKOFF).

Configuration du filtrage des segments

Vous pouvez utiliser la fonctionnalité de filtrage des segments pour contrôler quels segments sont collectés et envoyés à Instana, ce qui vous permet de réduire le volume de données et de vous concentrer sur les traces les plus pertinentes. Le capteur.NET permet un filtrage flexible de la plage de mesure grâce à plusieurs méthodes de configuration.

Pour plus de détails, consultez la section « Filtrage des intervalles ».

Activer l' AutoProfile

Pour les utilisateurs d'.NET, AutoProfile est disponible pour les applications d'.NET qui s'exécutent à la fois sur Linux et Windows.

Activation de l'option « AutoProfile » sur Linux

Pour activer l' AutoProfile,, ajoutez les paramètres suivants au fichier de configuration.yml votre agent :

com.instana.plugin.netcore:
  profiling:
    enabled: true

Vous pouvez également activer l'option « AutoProfile » en définissant la variable INSTANA_AUTO_PROFILE d'environnement sur « true ».

Activer l'option « AutoProfile » sur Windows

Pour activer l' AutoProfile,, procédez comme suit :

  1. Ajoutez les paramètres suivants au fichier de configuration.yml votre agent :
    com.instana.plugin.netcore:
      profiling:
        enabled: true
  2. Définissez la variable INSTANA_AUTO_PROFILE d'environnement sur true.

Pour plus d'informations, consultez la section « Analyser les profils ».

Ajouter un suivi personnalisé avec le SDK d'.NET

Vous pouvez, si vous le souhaitez, utiliser le SDK de traçage Instana .NET pour ajouter des segments personnalisés au code de votre application.

Pour utiliser le traçage personnalisé en plus de l'instrumentation standard d' Instana, ajoutez le package Instana.Tracing.Core.SdkNuGet à votre application.

Pour plus d'informations sur l'ajout de fonctionnalités de traçage distribué à votre code, consultez .NET ou .NET Core Tracing SDK.

Configuration de l'instrumentation pilotée par les événements

Instana prend en charge l'instrumentation événementielle, qui permet de collecter des données de télémétrie en surveillant les événements émis par les bibliothèques instrumentées dans l'environnement d'.NET. Au lieu de réécrire le code en langage intermédiaire (IL) lors de l'exécution, le traceur Instana .NET s'abonne à ces événements et les convertit en traces distribuées.

Configuration requise

  • .NET 6.0 ou version ultérieure, OU .NET Core 3.1 ou version ultérieure avec DiagnosticSource 6.0 + package
  • Instana .NET 1.0.96, ou version ultérieure

Activer ou désactiver le traçage basé sur les événements

Par défaut, l'instrumentation basée sur les événements est désactivée. Vous pouvez l'activer explicitement en définissant la variable d'environnement suivante :

# Enable event-driven tracing (disabled by default)
INSTANA_ENABLE_EVENT_TRACING=true

Filtrage des événements d' ActivitySource

Vous pouvez choisir les événements d' ActivitySource s à exclure ou à inclure en configurant les variables d'environnement comme indiqué dans les exemples suivants :

Mettre certaines sources sur liste noire :

# Exclude specific ActivitySource names (comma-separated)
INSTANA_DOTNET_BLACKLISTED_ACTIVITYSOURCES="MyApp.Internal,ThirdParty.Debug"

Ajouter à la liste blanche certaines sources qui sont déjà mises sur liste noire par défaut :

# Include only specific ActivitySource names (comma-separated)
INSTANA_DOTNET_WHITELISTED_ACTIVITYSOURCES="MyApp.Api,MyApp.Services"

Pour éviter les doublons dans l'instrumentation et le bruit superflu, l' Instana e par défaut les modèles d' ActivitySource s suivants :

Tableau 1. ActivitySource motifs
System.Net activités internes Systèmes de filetage ASP.NET Core hébergement en interne Autres activités
System.Net.Sockets

System.Net.Security

System.Net.Quic

System.Net.NetworkInformation

System.Net.Mail

System.Net.Experimental.*
System.Threading.* Microsoft.Extensions.*

Microsoft.AspNetCore.Experimental.*

Microsoft.AspNetCore.Hosting

Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets

Microsoft.AspNetCore.Server.Kestrel.Connections

Microsoft.AspNetCore.Routing.EndpointMiddleware
Experimental.*
Remarque : Instana empêche automatiquement la duplication de l'instrumentation en détectant si les bibliothèques ont déjà été instrumentées via la réécriture d'IL. Lorsque la réécriture IL et l'instrumentation pilotée par les événements sont toutes deux activées, le traceur d'.NET s détecte intelligemment les bibliothèques instrumentées en IL, ignore les ActivitySources, s correspondantes et conserve un seul chemin de trace, évitant ainsi les segments en double et la pollution des traces.