Configurazione di funzionalità aggiuntive per il monitoraggio di .NET

Configurazione delle intestazioni di correlazione delle tracce dell' Kafka

Per configurare il formato delle intestazioni di correlazione delle tracce di Kafka, impostare la INSTANA_KAFKA_HEADER_FORMAT variabile d'ambiente su binary, string, o both. Non disattivare completamente la correlazione delle tracce di tracciamento ( Kafka ) con INSTANA_KAFKA_TRACE_CORRELATION=false.

Un'altra alternativa consiste nel configurare le opzioni di correlazione delle tracce dell' Kafka e a livello dell'agente host dell' Instana.

Per ulteriori informazioni, consultare la sezione "Migrazione delle intestazioni" all'indirizzo Kafka.

Ignorare i processi

Per escludere il monitoraggio di determinati processi in un Windows e, procedere come segue:

  1. Aggiungere la INSTANA_REWRITER_BACKOFF variabile d'ambiente a livello di host.
  2. Impostare il valore su un elenco di nomi di pool o di processi separati da punti e virgola, come illustrato nell'esempio seguente:
    INSTANA_REWRITER_BACKOFF=my_pool_1;process_1;my_pool_2
  3. Riavvia i servizi IIS con il iisreset comando in modo che IIS possa caricare un nuovo ambiente.

Procedure di inserimento nella lista bianca

È possibile configurare Instana in modo che monitori solo determinati processi utilizzando la funzione "whitelist". Una volta configurata la whitelist, solo i processi che corrispondono ai modelli specificati vengono sottoposti a tracciamento. Sono esclusi tutti gli altri processi.

La funzione "whitelist" utilizza espressioni regolari che non distinguono tra maiuscole e minuscole e supporta i valori separati da punto e virgola, consentendo di definire più modelli per una corrispondenza flessibile dei processi.

Per abilitare la whitelist per determinati processi, procedere come segue:

  1. Aggiungere la INSTANA_NET_WHITELIST variabile d'ambiente a livello di host.
  2. Impostare il valore su un elenco di nomi di processi o di espressioni regolari separati da punti e virgola, come illustrato nell'esempio seguente:
    INSTANA_NET_WHITELIST="^(weBapi|cORe).*;customerService;myApp.dll"

    dove:

    • ^(weBapi|cORe).* corrisponde ai processi che iniziano con webapi o core (senza distinzione tra maiuscole e minuscole). Questo modello utilizza ancore e caratteri jolly delle espressioni regolari per individuare più applicazioni correlate.
    • customerService effettua una ricerca senza distinzione tra maiuscole e minuscole tra i nomi dei file di processo che iniziano con customerService. Ad esempio, corrisponde a CustomerService.dll o customerServiceAPI.dll.
    • myApp.dll corrisponde all'applicazione specifica con il nome completo del file e l'estensione.
  3. Riavvia l'applicazione affinché la variabile d'ambiente abbia effetto.

Una volta configurata la whitelist, il profiler verifica, durante l'inizializzazione, che ogni processo corrisponda ai modelli presenti nella whitelist. Vengono monitorati solo i processi che corrispondono ad almeno uno dei modelli. Se non viene trovata alcuna corrispondenza, il profiler termina senza collegarsi al processo.

La funzione "whitelist" è particolarmente utile in contesti in cui si desidera:

  • Ridurre i costi generali monitorando solo le applicazioni critiche
  • Isolare determinati servizi ai fini del monitoraggio
  • Escludere dalla tracciabilità i processi non produttivi o di test
Nota:
Se la variabile d'ambiente INSTANA_NET_WHITELIST non è impostata o è vuota, tutti i processi sono idonei alla tracciatura (fatte salve eventuali regole di blacklist configurate con INSTANA_REWRITER_BACKOFF).

Configurazione del filtro degli span

È possibile utilizzare la funzione di filtraggio degli span per controllare quali span vengono raccolti e inviati a Instana, consentendo così di ridurre il volume dei dati e concentrarsi sulle tracce più rilevanti. Il sensore.NET supporta un filtraggio flessibile dell'intervallo tramite diversi metodi di configurazione.

Per ulteriori dettagli, consultare la sezione " Filtraggio degli span".

Configurazione delle tracce di stack

Utilizza la configurazione dello stack trace per controllare la quantità di dati relativi allo stack trace raccolti e importati da Instana. È possibile configurare il Tracer di .NET per eseguire una delle seguenti azioni:

  • Raccogliere le tracce di stack solo per gli span EXIT errati
  • Disattiva la raccolta della traccia dello stack
  • Controllare la profondità della traccia di stack
Nota:
HTTP Le campate di ingresso e di uscita che generano un errore (span.ec=1) riportano sempre una traccia dello stack, indipendentemente dalla modalità di tracciamento dello stack configurata.

Per ulteriori informazioni, consultare la sezione " Configurazione delle tracce di stack per .NET ".

Attivazione dell' AutoProfile

Per gli utenti di .NET, AutoProfile è disponibile per le applicazioni .NET che funzionano sia su Linux che su Windows.

Attivazione di " AutoProfile " su Linux

Per abilitare l' AutoProfile,, aggiungi le seguenti impostazioni al file dell'agente configuration.yml :

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

È inoltre possibile abilitare l' AutoProfile e impostando la variabile INSTANA_AUTO_PROFILE d'ambiente su true.

Attivazione di " AutoProfile " su Windows

Per abilitare l' AutoProfile,, procedere come segue:

  1. Aggiungi le seguenti impostazioni al file del configuration.yml tuo agente:
    com.instana.plugin.netcore:
      profiling:
        enabled: true
  2. Imposta la variabile INSTANA_AUTO_PROFILE d'ambiente su true.

Per ulteriori informazioni, consultare la sezione " Analisi dei profili".

Aggiunta di tracciamenti personalizzati con l'SDK di .NET

Se lo desideri, puoi utilizzare l'SDK di tracciamento Instana .NET per aggiungere span personalizzati al codice della tua applicazione.

Per utilizzare il tracciamento personalizzato in aggiunta alla strumentazione standard di Instana, aggiungi il pacchetto Instana.Tracing.Core.SdkNuGet alla tua applicazione.

Per ulteriori informazioni su come aggiungere funzionalità di tracciamento distribuito al proprio codice, consultare .NET oppure .NET Core Tracing SDK.

Configurazione della strumentazione basata sugli eventi

Instana supporta la strumentazione basata sugli eventi, che acquisisce i dati di telemetria monitorando gli eventi emessi dalle librerie strumentate nell'ambiente .NET. Anziché riscrivere il codice in Intermediate Language (IL) durante l'esecuzione, il Tracer di Instana .NET si abbona a questi eventi e li converte in tracce distribuite.

Requisiti

  • .NET 6.0 o versioni successive, OPPURE .NET Core 3.1 o versioni successive con DiagnosticSource 6.0 + package
  • Instana .NET Sensore 1.0.96 o o versioni successive

Attivazione o disattivazione del tracciamento basato sugli eventi

Per impostazione predefinita, la strumentazione basata sugli eventi è disabilitata. È possibile abilitarla esplicitamente impostando la seguente variabile d'ambiente:

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

Filtraggio degli eventi dell' ActivitySource

È possibile decidere quali eventi di ActivitySource escludere o includere configurando le variabili d'ambiente come illustrato negli esempi seguenti:

Inserire fonti specifiche nella lista nera:

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

Aggiungere alla lista bianca fonti specifiche che sono già inserite nella lista nera per impostazione predefinita:

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

Per evitare la duplicazione della strumentazione e rumori superflui, Instana esclude di default i seguenti modelli ActivitySource :

Tabella 1. ActivitySource modelli
System.Net attività interne Filettatura del sistema ASP.NET Core hosting interno Altre attività
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.*
Nota:
Instana impedisce automaticamente la duplicazione della strumentazione, rilevando quando le librerie sono già state strumentate tramite la riscrittura del codice IL. Quando sono attivate sia la riscrittura dell'IL che la strumentazione basata sugli eventi, il Tracer di .NET rileva in modo intelligente le librerie strumentate in IL, ignora i corrispondenti " ActivitySources, " e mantiene un unico percorso di tracciamento, evitando così la duplicazione degli span e l'inquinamento della traccia.

HTTP 4xx segnalazione degli errori relativi ai codici di stato

È possibile classificare le risposte "opt-in" provenienti da HTTP e 4xx come errori negli span di uscita.

Per ulteriori informazioni sulla configurazione di questa funzionalità, consultare la sezione “Configurazione dei codici di stato di HTTP 4xx come errori ”.