Megosztás a következőn keresztül:


Futásidejű konfigurációs beállítások hibakereséshez és profilkészítéshez

Ez a cikk a .NET-hibakeresés és -profilkészítés konfigurálásához használható beállításokat ismerteti.

Megjegyzés:

A .NET 6 az előtagon DOTNET_ szabványosítja a .NET futásidejű viselkedést konfiguráló környezeti változók helyett COMPlus_ . Az COMPlus_ előtag azonban továbbra is működni fog. Ha a .NET-futtatókörnyezet egy korábbi verzióját használja, akkor is használja a COMPlus_ környezeti változók előtagját.

Diagnosztika engedélyezése

  • Konfigurálja, hogy a hibakereső, a profilkészítő és az EventPipe diagnosztika engedélyezve van-e vagy le van-e tiltva.
  • Ha kihagyja ezt a beállítást, a diagnosztika engedélyezve van. Ez egyenértékű az érték 1beállításával.
A beállítás neve Értékek
runtimeconfig.json N.A. N.A.
Környezeti változó COMPlus_EnableDiagnostics vagy DOTNET_EnableDiagnostics 1 -Engedélyezve
0 -Tiltva

Profilkészítés engedélyezése

  • Konfigurálja, hogy a profilkészítés engedélyezve van-e az aktuálisan futó folyamathoz.
  • Ha kihagyja ezt a beállítást, a profilkészítés le van tiltva. Ez egyenértékű az érték 0beállításával.
A beállítás neve Értékek
runtimeconfig.json N.A. N.A.
Környezeti változó CORECLR_ENABLE_PROFILING 0 -Tiltva
1 -Engedélyezve

Profiler GUID

  • Megadja a profilkészítőnek az aktuálisan futó folyamatba betöltendő GUID-azonosítóját.
A beállítás neve Értékek
runtimeconfig.json N.A. N.A.
Környezeti változó CORECLR_PROFILER sztring-guid

Profilkészítő helye

  • Megadja a profilkészítő DLL elérési útját a jelenleg futó folyamatba (vagy 32 bites vagy 64 bites folyamatba) való betöltéséhez.
  • Ha egynél több változó van beállítva, a bitness-specifikus változók elsőbbséget élveznek. Megadják a profilkészítő betöltendő bitképességét.
  • További információ: A profilkészítő kódtár megkeresése.
A beállítás neve Értékek
Környezeti változó CORECLR_PROFILER_PATH sztring-elérési út
Környezeti változó CORECLR_PROFILER_PATH_32 sztring-elérési út
Környezeti változó CORECLR_PROFILER_PATH_64 sztring-elérési út

Perf térképek és jit-memóriaképek exportálása

  • Engedélyezi vagy letiltja a perf térképek vagy jit-memóriaképek szelektív engedélyezését. Ezek a fájlok lehetővé teszik a külső eszközök, például a Linux perf eszköz számára a dinamikusan létrehozott kód és az előre összeállított ReadyToRun (R2R) modulok hívási helyeinek azonosítását.
  • Ha kihagyja ezt a beállítást, a perf map és a jit dump fájlok írása is le van tiltva. Ez egyenértékű az érték 0beállításával.
  • Ha a perf térképek le vannak tiltva, nem minden felügyelt hívási webhely lesz megfelelően feloldva.
  • A Linux kernel verziójától függően az eszköz mindkét formátumot támogatja perf .
  • A perf térképek vagy jit memóriaképek engedélyezése 10-20%-os többletterhelést okoz. A teljesítményre gyakorolt hatás minimalizálása érdekében ajánlott szelektíven engedélyezni a perf térképeket vagy a jit-memóriaképeket, de mindkettőt nem.

Az alábbi táblázat a perf térképeket és a jit-térképeket hasonlítja össze.

Format Leírás Támogatott:
Perf térképek Kibocsát, /tmp/perf-<pid>.mapamely szimbolikus információkat tartalmaz a dinamikusan létrehozott kódhoz.
Bocsát ki /tmp/perfinfo-<pid>.map, amely tartalmazza a ReadyToRun (R2R) modul szimbólumadatait, és amelyet a PerfCollect használ.
A perf térképek minden Linux kernelverzióban támogatottak.
Jit-memóriaképek A jit memóriakép formátuma felülírja a perf térképeket, és részletesebb szimbolikus információkat tartalmaz. Ha engedélyezve van, a jit memóriaképek fájlokat eredményeznek /tmp/jit-<pid>.dump . Linux kernel 5.4-ös vagy újabb verziói.
A beállítás neve Értékek
runtimeconfig.json N.A. N.A.
Környezeti változó COMPlus_PerfMapEnabled vagy DOTNET_PerfMapEnabled 0 -Tiltva
1 - a perf térképek és a jit memóriaképek engedélyezve
2 - jit memóriaképek engedélyezve
3 - a perf térképek engedélyezve

Perf naplójelölők

  • Engedélyezi vagy letiltja a megadott jel elfogadását és figyelmen kívül hagyását a perf naplók jelölőjeként.
  • Ha kihagyja ezt a beállítást, a rendszer nem hagyja figyelmen kívül a megadott jelet. Ez egyenértékű az érték 0beállításával.
A beállítás neve Értékek
runtimeconfig.json N.A. N.A.
Környezeti változó COMPlus_PerfMapIgnoreSignal vagy DOTNET_PerfMapIgnoreSignal 0 -Tiltva
1 -Engedélyezve

Megjegyzés:

Ez a beállítás figyelmen kívül lesz hagyva, ha a DOTNET_PerfMapEnabled nincs megadva vagy be van állítva 0 (azaz le van tiltva).