ETW-események betöltése
Ezek az események az alkalmazástartományok, szerelvények és modulok be- és kirakodásával kapcsolatos információkat gyűjtenek.
Minden betöltőesemény a LoaderKeyword
(0x8) kulcsszó alá kerül. Az DCStart
események és események DCEnd
a (0x8) StartRundown
/EndRundown
alatt LoaderRundownKeyword
vannak engedélyezve. (További információ: CLR ETW kulcsszavak és szintek.)
Alkalmazástartomány eseményei
Az alábbi táblázat a kulcsszót és a szintet mutatja.
Az esemény növelésének kulcsszója | Esemény | Level |
---|---|---|
LoaderKeyword (0x8) |
AppDomainLoad_V1 és AppDomainUnLoad_V1 |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +StartRundownKeyword |
AppDomainDCStart_V1 |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +EndRundownKeyword |
AppDomainDCEnd_V1 |
Tájékoztató (4) |
Az alábbi táblázat az eseményinformációkat mutatja be.
Esemény | Eseményazonosító | Leírás |
---|---|---|
AppDomainLoad_V1 (az összes alkalmazástartományhoz naplózva) |
156 | Akkor kerül létrehozásra, ha egy alkalmazástartomány egy folyamat élettartama alatt jön létre. |
AppDomainUnLoad_V1 |
157 | Akkor kerül létrehozásra, ha egy alkalmazástartomány egy folyamat teljes élettartama alatt megsemmisül. |
AppDomainDCStart_V1 |
157 | Az alkalmazástartományok számbavétele egy indítási lefutás során. |
AppDomainDCEnd_V1 |
158 | Az alkalmazástartományok számbavétele egy lefuttatás során. |
Az alábbi táblázat az eseményadatokat mutatja be.
Mezőnév | Adattípus | Leírás |
---|---|---|
AppDomainID | win:UInt64 | Az alkalmazástartomány egyedi azonosítója. |
AppDomainFlags | win:UInt32 | 0x1: Alapértelmezett tartomány. 0x2: Végrehajtható. 0x4: Alkalmazástartomány, 28–31. bit: A tartomány megosztási szabályzata. 0: Megosztott tartomány. |
AppDomainName | win:UnicodeString | Rövid alkalmazástartománynév. A folyamat élettartama során változhat. |
AppDomainIndex | Win:UInt32 | Az alkalmazástartomány indexe. |
ClrInstanceID | win:UInt16 | A CLR vagy a CoreCLR példány egyedi azonosítója. |
CLR Loader Assembly Events
Az alábbi táblázat a kulcsszót és a szintet mutatja.
Az esemény növelésének kulcsszója | Esemény | Level |
---|---|---|
LoaderKeyword (0x8) |
AssemblyLoad és AssemblyUnload |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +StartRundownKeyword |
AssemblyDCStart |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +EndRundownKeyword |
AssemblyDCEnd |
Tájékoztató (4) |
Az alábbi táblázat az eseményinformációkat mutatja be.
Esemény | Eseményazonosító | Leírás |
---|---|---|
AssemblyLoad_V1 |
154 | Szerelvény betöltésekor emelik ki. |
AssemblyUnload_V1 |
155 | A szerelvény eltávolításakor fel van emelve. |
AssemblyDCStart_V1 |
155 | Az indítási lefutás során számba adja a szerelvényeket. |
AssemblyDCEnd_V1 |
156 | Enumerálja a szerelvényeket egy véglefutás során. |
Az alábbi táblázat az eseményadatokat mutatja be.
Mezőnév | Adattípus | Leírás |
---|---|---|
AssemblyID | win:UInt64 | A szerelvény egyedi azonosítója. |
AppDomainID | win:UInt64 | A szerelvény tartományának azonosítója. |
Kötésazonosító | win:UInt64 | A szerelvénykötést egyedileg azonosító azonosító. |
AssemblyFlags | win:UInt32 | 0x1: Tartománysemleges szerelvény. 0x2: Dinamikus szerelvény. 0x4: A szerelvény natív képpel rendelkezik. 0x8: Gyűjthető szerelvény. |
AssemblyName | win:UnicodeString | Teljes szerelvénynév. |
ClrInstanceID | win:UInt16 | A CLR vagy a CoreCLR példány egyedi azonosítója. |
Modulesemények
Az alábbi táblázat a kulcsszót és a szintet mutatja.
Az esemény növelésének kulcsszója | Esemény | Level |
---|---|---|
LoaderKeyword (0x8) |
ModuleLoad_V2 és ModuleUnload_V2 |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +StartRundownKeyword |
ModuleDCStart_V2 |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +EndRundownKeyword |
ModuleDCEnd_V2 |
Tájékoztató (4) |
Az alábbi táblázat az eseményinformációkat mutatja be.
Esemény | Eseményazonosító | Leírás |
---|---|---|
ModuleLoad_V2 |
152 | Akkor merül fel, amikor egy modul betöltődik egy folyamat élettartama alatt. |
ModuleUnload_V2 |
153 | Akkor merül fel, amikor egy modul egy folyamat élettartama alatt ki van ürítve. |
ModuleDCStart_V2 |
153 | A modulok számbavétele egy indítási lefutás során. |
ModuleDCEnd_V2 |
154 | A modulok számbavétele egy lefuttatás során. |
Az alábbi táblázat az eseményadatokat mutatja be.
Mezőnév | Adattípus | Leírás |
---|---|---|
Modulazonosító | win:UInt64 | A modul egyedi azonosítója. |
AssemblyID | win:UInt64 | Annak a szerelvénynek az azonosítója, amelyben ez a modul található. |
ModuleFlags | win:UInt32 | 0x1: Tartománysemleges modul. 0x2: A modul natív képpel rendelkezik. 0x4: Dinamikus modul. 0x8: Jegyzékmodul. |
Fenntartott1 | win:UInt32 | Fenntartott mező. |
ModuleILPath | win:UnicodeString | A modul közös köztes nyelvének (CIL) képének elérési útja, vagy dinamikus modulnév, ha dinamikus szerelvény (null-végződésű). |
ModuleNativePath | win:UnicodeString | A modul natív rendszerképének elérési útja, ha van (null értékű). |
ClrInstanceID | win:UInt16 | A CLR vagy a CoreCLR példány egyedi azonosítója. |
ManagedPdbSignature | win:GUID | A modulnak megfelelő felügyelt programadatbázis (PDB) GUID-aláírása. (Lásd: Megjegyzések.) |
ManagedPdbAge | win:UInt32 | A modulnak megfelelő felügyelt PDB-be írt korszám. (Lásd: Megjegyzések.) |
ManagedPdbBuildPath | win:UnicodeString | A modulnak megfelelő felügyelt PDB létrehozásának elérési útja. Bizonyos esetekben ez csak egy fájlnév lehet. (Lásd: Megjegyzések.) |
NativePdbSignature | win:GUID | A modulnak megfelelő natív képgenerátor (NGen) PDB GUID-aláírása, ha van ilyen. (Lásd: Megjegyzések.) |
NativePdbAge | win:UInt32 | A modulnak megfelelő NGen PDB-be írt korszám, ha van ilyen. (Lásd: Megjegyzések.) |
NativePdbBuildPath | win:UnicodeString | Annak a helynek az elérési útja, ahol a modulnak megfelelő NGen PDB készült, ha van ilyen. Bizonyos esetekben ez csak egy fájlnév lehet. (Lásd: Megjegyzések.) |
Megjegyzések
A "Pdb" mezőket a profilkészítési eszközök a profilkészítési munkamenet során betöltött moduloknak megfelelő PDF-ek megkeresésére használhatják. Ezeknek a mezőknek az értékei a modul IMAGE_DIRECTORY_ENTRY_DEBUG szakaszaiba írt adatoknak felelnek meg, amelyeket a hibakeresők általában a betöltött moduloknak megfelelő PDF-ek megkereséséhez használnak.
A "ManagedPdb" kezdetű mezőnevek a felügyelt fordító által létrehozott CIL-modulnak megfelelő felügyelt PDB-re vonatkoznak (például a C# vagy a Visual Basic fordító). Ez a PDB a felügyelt PDB formátumot használja, és leírja, hogy az eredeti felügyelt forráskód elemei, például fájlok, vonalszámok és szimbólumnevek hogyan képeznek le a CIL-modulba lefordított CIL-elemekre.
A "NativePdb" kezdetű mezőnevek a hívással
NGEN createPDB
létrehozott NGen PDB-re vonatkoznak. Ez a PDB a natív PDB-formátumot használja, és leírja, hogy az eredeti felügyelt forráskód elemei, például a fájlok, a vonalszámok és a szimbólumnevek hogyan képeznek le natív elemeket az NGen modulban.
CLR-tartománymodul eseményei
Az alábbi táblázat a kulcsszót és a szintet mutatja.
Az esemény növelésének kulcsszója | Esemény | Level |
---|---|---|
LoaderKeyword (0x8) |
DomainModuleLoad_V1 |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +StartRundownKeyword |
DomainModuleDCStart_V1 |
Tájékoztató (4) |
LoaderRundownKeyword (0x8) +EndRundownKeyword |
DomainModuleDCEnd_V1 |
Tájékoztató (4) |
Az alábbi táblázat az eseményinformációkat mutatja be.
Esemény | Eseményazonosító | Leírás |
---|---|---|
DomainModuleLoad_V1 |
151 | Akkor merül fel, amikor egy modul betöltődik egy alkalmazástartományba. |
DomainModuleDCStart_V1 |
151 | Az indítási lefutás során egy alkalmazástartományba betöltött modulok számbavétele, és az összes alkalmazástartomány naplózva lesz. |
DomainModuleDCEnd_V1 |
152 | Az alkalmazástartományba betöltött modulok számbavétele egy lefuttatás során, és az összes alkalmazástartomány naplózva lesz. |
Az alábbi táblázat az eseményadatokat mutatja be.
Mezőnév | Adattípus | Leírás |
---|---|---|
Modulazonosító | win:UInt64 | Azonosítja azt a szerelvényt, amelyhez ez a modul tartozik. |
AssemblyID | win:UInt64 | Annak a szerelvénynek az azonosítója, amelyben ez a modul található. |
AppDomainID | win:UInt64 | Annak az alkalmazástartománynak az azonosítója, amelyben ezt a modult használják. |
ModuleFlags | win:UInt32 | 0x1: Tartománysemleges modul. 0x2: A modul natív képpel rendelkezik. 0x4: Dinamikus modul. 0x8: Jegyzékmodul. |
Fenntartott1 | win:UInt32 | Fenntartott mező. |
ModuleILPath | win:UnicodeString | A modul CIL-lemezképének elérési útja vagy dinamikus modul neve, ha dinamikus szerelvény (null értékű). |
ModuleNativePath | win:UnicodeString | A modul natív rendszerképének elérési útja, ha van (null értékű). |
ClrInstanceID | win:UInt16 | A CLR vagy a CoreCLR példány egyedi azonosítója. |
Modultartomány eseményei
Az alábbi táblázat a kulcsszót és a szintet mutatja.
Az esemény növelésének kulcsszója | Esemény | Level |
---|---|---|
PerfTrackKeyWord ) |
ModuleRange |
Tájékoztató (4) |
PerfTrackKeyWord |
ModuleRangeDCStart |
Tájékoztató (4) |
PerfTrackKeyWord |
ModuleRangeDCEnd |
Tájékoztató (4) |
Az alábbi táblázat az eseményinformációkat mutatja be.
Esemény | Eseményazonosító | Leírás |
---|---|---|
ModuleRange |
158 | Ez az esemény akkor jelenik meg, ha egy betöltött NGen-rendszerkép IBC-vel lett optimalizálva, és információkat tartalmaz az NGen-rendszerkép gyakori szakaszairól. |
ModuleRangeDCStart |
160 | Egy ModuleRange esemény egy leszámolás elején aktiválódott. |
ModuleRangeDCEnd |
161 | Egy ModuleRange esemény egy leszámolás végén aktiválódott. |
Az alábbi táblázat az eseményadatokat mutatja be.
Mezőnév | Adattípus | Leírás |
---|---|---|
ClrInstanceID | win:UInt16 | Egyedileg azonosítja a CLR egy adott példányát egy folyamatban, ha a CLR több példánya is betöltődik. |
Modulazonosító | win:UInt64 | Azonosítja azt a szerelvényt, amelyhez ez a modul tartozik. |
RangeBegin | win:UInt32 | A modul eltolása, amely a megadott tartománytípus tartományának kezdetét jelöli. |
RangeSize | win:UInt32 | A megadott tartomány mérete bájtban. |
RangeType | win:UInt32 | Egyetlen érték, 0x4, amely hideg IBC-tartományokat jelöl. Ez a mező több értéket is képviselhet a jövőben. |
RangeSize1 | win:UInt32 | A 0 rossz adatokat jelez. |
RangeBegin2 | win:UnicodeString |
Megjegyzések
Ha egy betöltött NGen-rendszerképet egy .NET-keretrendszer folyamatban optimalizáltak az IBC-vel, a ModuleRange
rendszer naplózza az NGen-rendszerképben lévő gyakori elérésű tartományokat tartalmazó eseményt, valamint annak moduleID
és ClrInstanceID
. Ha az NGen-rendszerkép nincs optimalizálva az IBC-vel, a rendszer nem naplózza ezt az eseményt. A modul nevének meghatározásához ezt az eseményt össze kell vetni a modul betöltési ETW-eseményeivel.
Az esemény hasznos adatmérete változó; a Count
mező az eseményben található tartományeltolások számát jelzi. Ezt az eseményt a Windows-eseménysel IStart
kell összeválogatni a tényleges tartományok meghatározásához. A Rendszerkép betöltésekor a rendszer naplózza a Windows Rendszerkép betöltése eseményt, és tartalmazza a betöltött rendszerkép virtuális címét.
A modultartomány eseményei bármely 4-nél nagyobb vagy egyenlő ETW-szinten aktiválódnak, és információs eseményként vannak besorolva.