Delen via


Runtimeconfiguratieopties voor foutopsporing en profilering

In dit artikel worden de instellingen beschreven die u kunt gebruiken voor het configureren van .NET-foutopsporing en -profilering.

Notitie

.NET 6 standaardiseert het voorvoegsel DOTNET_ in plaats van COMPlus_ voor omgevingsvariabelen die .NET-runtimegedrag configureren. COMPlus_ Het voorvoegsel blijft echter werken. Als u een eerdere versie van de .NET-runtime gebruikt, moet u nog steeds het COMPlus_ voorvoegsel voor omgevingsvariabelen gebruiken.

Diagnostische gegevens inschakelen

  • Hiermee configureert u of het foutopsporingsprogramma, de profiler en de diagnostische gegevens van EventPipe zijn ingeschakeld of uitgeschakeld.
  • Als u deze instelling weglaat, worden diagnostische gegevens ingeschakeld. Dit komt overeen met het instellen van de waarde op 1.
Naam instelling Waarden
runtimeconfig.json N.v.t. N.v.t.
Omgevingsvariabele COMPlus_EnableDiagnostics of DOTNET_EnableDiagnostics 1 -Ingeschakeld
0 -Handicap

Profilering inschakelen

  • Hiermee configureert u of profilering is ingeschakeld voor het actieve proces.
  • Als u deze instelling weglaat, wordt profilering uitgeschakeld. Dit komt overeen met het instellen van de waarde op 0.
Naam instelling Waarden
runtimeconfig.json N.v.t. N.v.t.
Omgevingsvariabele CORECLR_ENABLE_PROFILING 0 -Handicap
1 -Ingeschakeld

Profiler-GUID

  • Hiermee geeft u de GUID van de profiler die moet worden geladen in het actieve proces.
Naam instelling Waarden
runtimeconfig.json N.v.t. N.v.t.
Omgevingsvariabele CORECLR_PROFILER tekenreeks-guid

Profilerlocatie

  • Hiermee geeft u het pad naar de profiler-DLL om te laden in het actieve proces (of 32-bits of 64-bits proces).
  • Als er meer dan één variabele is ingesteld, hebben de bitnessspecifieke variabelen voorrang. Ze geven aan welke bitness van profiler moet worden geladen.
  • Zie De profilerbibliotheek zoeken voor meer informatie.
Naam instelling Waarden
Omgevingsvariabele CORECLR_PROFILER_PATH tekenreekspad
Omgevingsvariabele CORECLR_PROFILER_PATH_32 tekenreekspad
Omgevingsvariabele CORECLR_PROFILER_PATH_64 tekenreekspad

Perf-kaarten en jit-dumps exporteren

  • Hiermee schakelt u selectief inschakelen van perf-kaarten of jit-dumps in of uit. Met deze bestanden kunnen hulpprogramma's van derden, zoals het Linux-hulpprogramma perf , aanroepende sites identificeren voor dynamisch gegenereerde code en vooraf gecompileerde ReadyToRun-modules (R2R).
  • Als u deze instelling weglaat, worden perf-toewijzings- en jitdumpbestanden beide uitgeschakeld. Dit komt overeen met het instellen van de waarde op 0.
  • Wanneer perf-kaarten zijn uitgeschakeld, worden niet alle beheerde oproepsites correct opgelost.
  • Afhankelijk van de Linux-kernelversie worden beide indelingen ondersteund door het perf hulpprogramma.
  • Het inschakelen van perf-kaarten of jit-dumps veroorzaakt een overhead van 10-20%. Als u de invloed van de prestaties wilt minimaliseren, wordt u aangeraden selectief perf-kaarten of jit-dumps in te schakelen, maar niet beide.

In de volgende tabel worden prestatiekaarten en jit-kaarten vergeleken.

Indeling Beschrijving Ondersteund op
Perf-kaarten /tmp/perf-<pid>.mapVerzendt, dat symbolische informatie bevat voor dynamisch gegenereerde code.
/tmp/perfinfo-<pid>.mapVerzendt, met informatie over het symbool van de ReadyToRun-module (R2R) en wordt gebruikt door PerfCollect.
Prestatietoewijzingen worden ondersteund in alle Linux-kernelversies.
Jit-dumps De jit-dumpindeling vervangt perf-kaarten en bevat meer gedetailleerde symbolische informatie. Wanneer deze optie is ingeschakeld, worden jit-dumps uitgevoerd naar /tmp/jit-<pid>.dump bestanden. Linux-kernelversies 5.4 of hoger.
Naam instelling Waarden
runtimeconfig.json N.v.t. N.v.t.
Omgevingsvariabele COMPlus_PerfMapEnabled of DOTNET_PerfMapEnabled 0 -Handicap
1 - perf-kaarten en jit-dumps beide ingeschakeld
2 - Jit-dumps ingeschakeld
3 - perf-kaarten ingeschakeld

Prestatielogboekmarkeringen

  • Hiermee schakelt u het opgegeven signaal in of uit om te worden geaccepteerd en genegeerd als een markering in de perf-logboeken.
  • Als u deze instelling weglaat, wordt het opgegeven signaal niet genegeerd. Dit komt overeen met het instellen van de waarde op 0.
Naam instelling Waarden
runtimeconfig.json N.v.t. N.v.t.
Omgevingsvariabele COMPlus_PerfMapIgnoreSignal of DOTNET_PerfMapIgnoreSignal 0 -Handicap
1 -Ingeschakeld

Notitie

Deze instelling wordt genegeerd als DOTNET_PerfMapEnabled wordt weggelaten of is ingesteld 0 op (dat wil gezegd, uitgeschakeld).