Configurazione di funzionalità aggiuntive per il monitoraggio di .NET
Una volta configurato il monitoraggio di base di .NET, è possibile impostare funzionalità aggiuntive per potenziare le capacità di monitoraggio.
- Configurazione delle intestazioni di correlazione delle tracce dell' Kafka
- Ignorare i processi
- Procedure di inserimento nella lista bianca
- Configurazione del filtro degli span
- Configurazione delle tracce di stack
- Attivazione dell' AutoProfile
- Aggiunta di tracciamenti personalizzati con l'SDK di .NET
- Configurazione della strumentazione basata sugli eventi
- HTTP 4xx segnalazione degli errori relativi ai codici di stato
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:
- Aggiungere la
INSTANA_REWRITER_BACKOFFvariabile d'ambiente a livello di host. - 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 - Riavvia i servizi IIS con il
iisresetcomando 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:
- Aggiungere la
INSTANA_NET_WHITELISTvariabile d'ambiente a livello di host. - 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 conwebapiocore(senza distinzione tra maiuscole e minuscole). Questo modello utilizza ancore e caratteri jolly delle espressioni regolari per individuare più applicazioni correlate.customerServiceeffettua una ricerca senza distinzione tra maiuscole e minuscole tra i nomi dei file di processo che iniziano concustomerService. Ad esempio, corrisponde aCustomerService.dllocustomerServiceAPI.dll.myApp.dllcorrisponde all'applicazione specifica con il nome completo del file e l'estensione.
- 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
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
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:
- Aggiungi le seguenti impostazioni al file del configuration.yml tuo agente:
com.instana.plugin.netcore: profiling: enabled: true - Imposta la variabile
INSTANA_AUTO_PROFILEd'ambiente sutrue.
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 :
| System.Net attività interne | Filettatura del sistema | ASP.NET Core hosting interno | Altre attività |
|---|---|---|---|
System.Net.SocketsSystem.Net.SecuritySystem.Net.QuicSystem.Net.NetworkInformationSystem.Net.MailSystem.Net.Experimental.* |
System.Threading.* |
Microsoft.Extensions.*Microsoft.AspNetCore.Experimental.*Microsoft.AspNetCore.HostingMicrosoft.AspNetCore.Server.Kestrel.Transport.SocketsMicrosoft.AspNetCore.Server.Kestrel.ConnectionsMicrosoft.AspNetCore.Routing.EndpointMiddleware |
Experimental.* |
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 ”.