Risoluzione dei problemi relativi al tracciamento di .NET su Windows
Se la tracciatura non funziona come previsto, inizia con le procedure generali di risoluzione dei problemi prima di passare a scenari specifici.
Risoluzione dei problemi generali
Completa i seguenti passi:
Verificare i prerequisiti:
- Verifica la compatibilità della versione di .NET : assicurati che la tua applicazione funzioni su .NET Core Runtime 5.0 o versioni successive.
Verificare che l'agente di Instana sia in esecuzione:
- Apri Gestione attività su Windows e cerca il processo " Instana ".
- Verifica lo stato dell'agente nell'interfaccia utente di Instana.
Verificare che PCP ( Instana ) sia in esecuzione:
InstanaPCP.exeApri Gestione attività e cerca.- Se l'agente non è in esecuzione, riavviare l' Instana.
Verifica le variabili d'ambiente: se il tracciamento non funziona, controlla che le variabili d'ambiente siano:
- Impostare correttamente.
- Scritto correttamente.
- Impostare in modo adeguato in base all'ambiente in cui è distribuita l'applicazione.
- Valido, accessibile dal processo o dall'applicazione e corretto.
Controlla IL-Rewriter per verificare se è stato caricato correttamente:
Controllare i registri dell'applicazione per verificare la presenza di messaggi relativi all'inizializzazione di IL-Rewriter. Risultato previsto in caso di esito positivo:
*Initializing Instana IL-Rewriter for .NET Core* *Logging path is not set* *Loading configuration-file /app/instana_tracing/instrumentation.json*Nota: il percorso potrebbe variare a seconda dell'ambiente in uso.Se le righe relative a IL-Rewriter non vengono visualizzate, assicurarsi che tutte le variabili d'ambiente necessarie
CORECLRsiano impostate correttamente e disponibili per l'applicazione.- CORECLR_ABILITA_PROFILAZIONE
- CORECLR_PROFILER_PATH
- CORECLR_PROFILER
Controlla il Visualizzatore eventi di Windows : utilizza il Visualizzatore eventi di Windows per risolvere gli errori:
- Apri il Visualizzatore eventi.
- Go vai su Windows Logs > Applicazione.
- Cerca eventuali errori o avvisi relativi alla tua applicazione o a IIS.
- Verificare la presenza di eventi relativi a " Instana ".
Gli eventi contengono informazioni dettagliate, tra cui timestamp e codici di errore, che possono aiutare a individuare i problemi.
- Verificare che la diagnostica sia abilitata per .NET : assicurarsi che le variabili d'ambiente COMPlus_EnableDiagnostics e DOTNET_EnableDiagnostics siano impostate su
1. Se sono disabilitati, IL-Rewriter non può collegarsi al processo e, di conseguenza, non è possibile riscrivere le chiamate né generare tracce.
Risoluzione dei problemi specifici per ogni caso
Se le procedure di risoluzione dei problemi generali non risolvono il tuo problema, consulta i seguenti scenari di risoluzione dei problemi:
Scenario 1: Tracce o campate mancanti
Sintomi: l'applicazione mostra le metriche ma non le tracce; alcuni servizi generano rapporti, mentre altri no; oppure il tracciamento si interrompe dopo una distribuzione o un aggiornamento.
Procedura di risoluzione dei problemi:
Verificare che la versione dell'applicazione ".NET " sia supportata:
- .NET Core Versione di Runtime 5.0 o o successive
- Verificare che il tracciamento sia abilitato nel file dell'agente
configuration.yaml. - Raccogli i log di tracciamento utilizzando Log Collector oppure raccogliendoli manualmente.
Controlla i log di tracciamento dell' Instana :
- Se i log sono vuoti o non sono visibili tracce, l'applicazione non sta generando span.
- Se nei log sono presenti tracce ma mancano alcune informazioni (ad esempio, l'host), il problema riguarda il livello di tracciamento di .NET.
- Se nei log sono presenti tracce contenenti informazioni che non compaiono nell'interfaccia utente, il problema si è verificato nel backend di Instana o nell'agente.
Scenario 2: L'applicazione non si avvia
Sintomo: l'applicazione non si avvia correttamente quando è in esecuzione l'agente di Instana.
Procedura di risoluzione dei problemi:
Verificare che la versione dell'applicazione ".NET " sia supportata:
- .NET Core Versione di Runtime 5.0 o o successive
- Raccogli i registri di Event Viewer utilizzando Log Collector oppure raccogliendoli manualmente.
Controlla i registri del Visualizzatore eventi di Instana :
- Verifica se nei registri è presente un errore o un avviso. Un evento contiene informazioni dettagliate, tra cui timestamp e codici di errore, che possono aiutare a diagnosticare i problemi.
- Se compare un errore che indica
InstanaPCP.exeche l'operazione non è andata a buon fine, significa che l'operazione InstanaPCP non è riuscita. Controlla gli eventi che l'hanno preceduto e approfondisci la questione.
- Acquisire un dump di memoria dell'applicazione in questione.
Scenario 3: L'agente non rileva l'applicazion.NET
Sintomo: l'applicazione ".NET " non viene monitorata dall'agente " Instana " e non è presente nell'interfaccia utente.
Procedura di risoluzione dei problemi:
- Verificare che l'agente di Instana sia in esecuzione con privilegi di amministratore.
- Verificare che l'agente di Instana disponga delle autorizzazioni necessarie per l'applicazione.
Verificare che PCP ( Instana ) sia in esecuzione:
InstanaPCPApri Gestione attività su Windows e cerca.
Raccogli i log degli agenti d Instana utilizzando Log Collector oppure raccogliendoli manualmente.
Nei log dell'agente di Instana dovrebbe essere presente la seguente riga:
com.instana.agent-process-handling - 1.0.35 | | InstanaPCP.exe passed early window; marked RUNNING
Verificare che i sensori siano stati attivati correttamente nei log dell'agente:
com.instana.sensor-clr - 1.1.141 | | Activated Sensor- Verificare che il processo ".NET " sia avviato dopo l'agente " Instana ".
Scenario 4: Elevato utilizzo della CPU da parte di un' InstanaPCP e o di un'applicazione dopo l'attivazione del tracciamento
Sintomo: l'applicazione " InstanaPCP " o ".NET " mostra un utilizzo della CPU insolitamente elevato dopo l'attivazione della tracciatura.
Procedura di risoluzione dei problemi:
- Verifica se il problema è legato all'applicazione o a un processo in esecuzione controllando l InstanaPCP.
Se il problema riguarda InstanaPCP:
- Abilita i log di debug per InstanaPCP. Vedi "Raccolta dei registri ".
- Controlla i log alla ricerca di messaggi ricorrenti relativi a contatori di prestazioni mancanti o eccezioni.
Se il problema è un picco di utilizzo della memoria dell'applicazione:
- Raccogliere i registri degli eventi e i registri di ".NET " utilizzando Log Collector oppure raccogliendoli manualmente.
- Controlla i registri degli eventi e i registri di ".NET " per individuare eventuali eccezioni relative alla memoria.
- Verificare se il problema è causato da una strumentazione dell' Instana.
- Acquisire un file di dump di ".NET " per un'ulteriore analisi. Go Accedere a Gestione attività, fare clic con il pulsante destro del mouse sul processo e creare un file di dump.
Raccolta dei log
Instana offre due metodi per raccogliere i log:
- Raccoglitore di log (consigliato)
- Raccolta manuale dei log (soluzione alternativa in caso di malfunzionamento del Log Collector)
Raccolta dei log tramite Log Collector
Log Collector è un'applicazione autonoma che consente di raccogliere i log da Instana. È possibile avviare Log Collector dalle seguenti posizioni:
Il Log Collector raccoglie i seguenti log:
- Registri di tracciamento delle applicazioni
- Instana Registri PCP
- Log di debug CLR
- Registri del Visualizzatore eventi
- Instana log di debug dell'agente
- Instana l'agente registra i log
Esecuzione di Log Collector dall'interfaccia utente di Instana
- Dal menu di navigazione, seleziona "Analytics > Infrastruttura" oppure cerca l'agente dal menu "Altro" nell'interfaccia utente di Instana.
- Fai clic sul processo ".NET " che desideri monitorare.
Nella dashboard del processo ".NET ", fare clic su "Setup" > ".NET " > "Debug Env", come mostrato nell'immagine seguente:
Figura 1. Programma di raccolta log 
Questo passaggio attiva l'applicazione Log Collector sull'host e imposta le variabili d'ambiente necessarie per la raccolta dei log di .NET.
- Riavvia l'applicazione .NET per assicurarti che le variabili d'ambiente aggiornate vengano caricate.Nota: per includere i log di " InstanaPCP " nella raccolta, riavviare anche l'agente " Instana ".
- Effettua alcune chiamate o genera traffico verso l'applicazione per creare i log.
Clicca su "Scarica i registri di.NET ".
Nota: il pulsante "Scarica i log di .NET " viene visualizzato solo dopo che l'ambiente di debug è stato configurato correttamente.
Il Log Collector raccoglie i log da diverse fonti, tra cui i log di tracciamento delle applicazioni (se [agent-dir]\etc\instana\com.instana.agent.main.sender.File.cfg già configurati), i log di " InstanaPCP " (se l'agente è stato riavviato), i log di debug CLR, i log di Event Viewer e i log dell'agente " Instana ". I log raccolti vengono compressi in un .zip file e scaricati sul tuo computer.
Esecuzione di Log Collector dalla console
Nel caso in cui l'interfaccia utente non funzioni, è possibile avviare Log Collector dalla console:
Go nel percorso del raccoglitore di log nella cartella dell'agente di Instana :
C:\\instana-agent\data\repo\com\instana\dotnet-logcollector-win-x64\1.302.1\dotnet-logcollector-win-x64-1.302.1Esegui il seguente comando per preparare la raccolta dei log:
logcollector.exe -m prepare -i "C:\Program Files\Instana\instana-agent"- Riavvia l'applicazione ed effettua delle chiamate all'applicazione.
Dopo un po' di tempo, esegui il comando collect:
logcollector.exe -m collect -i "C:\Program Files\Instana\instana-agent" -o "C:\output\log.zip"Nota: assicurati di eseguire i comandi come amministratore.
Raccolta manuale dei log
In alternativa, è possibile raccogliere i log manualmente. Completa i seguenti passi:
Abilita i log di debug:
Aggiungere le variabili d'ambiente utilizzando una delle seguenti opzioni:
Nota: assicurarsi che i percorsi siano validi, accessibili al processo o all'applicazione e corretti.Impostare manualmente le seguenti variabili d'ambiente a livello di sistema:
INSTANA_NET_LOG_PATH: "C:\dc_net_log" INSTANA_NET_LOG_LEVEL: DEBUG INSTANA_NET_CORE_LOG_LEVEL: DEBUG INSTANA_NET_FF_LOG_LEVEL: DEBUG INSTANA_NET_PCP_LOG_LEVEL: DEBUG INSTANA_TRACER_ENTEREXIT_LOGGING: 1 INSTANA_EXTENDED_DEBUG: 1Apri il prompt dei comandi come amministratore ed esegui il seguente comando per aggiungere le variabili d'ambiente:
setx INSTANA_NET_LOG_PATH "C:\dc_net_log" /M setx INSTANA_NET_LOG_LEVEL "DEBUG" /M setx INSTANA_NET_CORE_LOG_LEVEL "DEBUG" /M setx INSTANA_NET_FF_LOG_LEVEL "DEBUG" /M setx INSTANA_NET_PCP_LOG_LEVEL "DEBUG" /M setx INSTANA_TRACER_ENTEREXIT_LOGGING "1" /M setx INSTANA_EXTENDED_DEBUG "1" /M
Configurare la seguente chiave di registro di sistema Windows :
CLRDebugLog: "C:\dc_clr_debug_log\clr_"- Riavviare l'applicazione.
Raccogliere i log degli agenti dell' Instana :
- Arrestare l'agente
<instana_install_dir>/bin/stop.shoppure, se l'agente è stato avviato come servizio, arrestare il servizio. Rimuovere i file di log: eliminare tutti i file presenti nella directory dei log per ricominciare da zero eseguendo il seguente comando:
rm -rf <instana_install_dir>/data/log/*- Imposta il livello di registrazione su "Debug": modifica il livello di gravità della registrazione nel file dell'agente
configuration.yaml. Per ulteriori informazioni, consultare la sezione "Impostazione del file di configurazione dell'agente". - Avvia l'agente
<instana_install_dir>/bin/start.sho avvia il servizio. - Riprodurre il problema: lasciare che il problema si verifichi ed eseguire l'agente per circa 15 minuti.
Raccogli i log: comprimi la directory dei log per l'invio eseguendo il seguente comando:
cd <instana_install_dir>/data/logs zip -r instana_agent_debug_logs.zip *
- Arrestare l'agente
Raccogliere i log di tracciamento dell' Instana :
com.instana.agent.main.sender.File.cfgGo per[agent-dir]\etc\instanae aprire il file.Aggiungi le seguenti righe nel file:
prefix=instanaTraces type=tracesQuesta configurazione genera un file di log che contiene tutte le tracce con
[agent-dir]/data/logilinstanaTracesprefisso.- Riavvia l'agente di Instana.
- Lasciare in funzione l'applicazione per circa 15 minuti.
Raccogliere i log dai seguenti percorsi:
- Percorso specificato dalla variabile
INSTANA_NET_LOG_PATH instana-agent-installation-folder/data/log
- Percorso specificato dalla variabile
Raccogliere i log di debug CLR:
- Apri l'Editor del Registro di sistema.
- Naviga a
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Instana\ C:\temp\clr_Aggiungi la chiaveCLRDebugLogdi registro come stringa con valore, ad esempio.In alternativa, apri il prompt dei comandi come amministratore ed esegui il seguente comando:
reg add "HKLM\SOFTWARE\Instana" /v CLRDebugLog /t REG_SZ /d "C:\temp\clr_" /f
Apertura di un ticket di supporto
Se il problema persiste dopo aver completato questi passaggi di risoluzione dei problemi, raccogli i dati relativi all' MustGather e prima di aprire un ticket di assistenza. MustGather Questi dati aiutano il servizio di assistenza IBM a diagnosticare il tuo problema in modo più efficiente.
Per ulteriori informazioni, consultare MustGather:, Instana, .NET e Tracer - Windows.