CLR ETW Anahtar Sözcükleri ve Düzeyler
Windows (ETW) olayları için olay izleme, kategoriye ve düzeye göre filtrelenebilir. Olay CLR ETW Anahtar Sözcükleri , olayların kategoriye göre filtrelenmesine olanak tanır; çalışma zamanı ve rundown sağlayıcıları için kombinasyonlarda kullanılırlar. Olay düzeyleri bayraklarla tanımlanır.
CLR ETW Anahtar Sözcükleri
Anahtar sözcükler, değerleri oluşturmak için birleştirilebilen bayraklardır. Uygulamada, komut satırı yardımcı programlarını çağırdığınızda anahtar sözcük adları yerine anahtar sözcüklerin onaltılık değerlerini kullanırsınız.
Anahtar sözcükler aşağıdaki tablolarda açıklanmıştır:
Çalışma zamanı sağlayıcısı için sembol çözümlemesi için anahtar sözcük bileşimleri
Rundown sağlayıcısı için sembol çözümlemesi için anahtar sözcük bileşimleri
CLR ETW Çalışma Zamanı Anahtar Sözcükleri
Aşağıdaki tabloda CLR ETW çalışma zamanı anahtar sözcükleri, bunların değerleri ve ne için kullanıldıkları listelenir.
Çalışma zamanı anahtar sözcük adı | Değer | Amaç |
---|---|---|
GCKeyword |
0x00000001 | Çöp toplama olaylarının toplanmasını sağlar. |
LoaderKeyword |
0x00000008 | Yükleyici olaylarının toplanmasını sağlar. |
JITKeyword |
0x00000010 | Tam zamanında (JIT) olayların toplanmasını sağlar. |
NGenKeyword |
0x00000020 | Yerel görüntü yöntemleri (Yerel Görüntü Oluşturucu, Ngen.exe tarafından işlenen yöntemler) için olayların toplanmasını sağlar; ve EndEnumerationKeyword ile kullanılırStartEnumerationKeyword . Bu anahtar sözcüğün yükü yüksek. Yüklenen her NGen modülü içindeki her yöntem için olaylar oluşturur. Mümkün olduğunda, bu anahtar sözcüğü kullanmak yerine, NGen modüllerinden yöntemler hakkında bilgi almak için profil oluşturma araçları tarafından oluşturulan program veritabanlarını (PDB) kullanmanızı öneririz. Bu tablonun devamında da OverrideAndSuppressNGenEventsKeyword bakın. |
StartEnumerationKeyword |
0x00000040 | Çalışma zamanındaki tüm yöntemlerin numaralandırmasını etkinleştirir; ile NGenKeyword birlikte kullanılır. |
EndEnumerationKeyword |
0x00000080 | Çalışma zamanında yok edilen tüm yöntemlerin numaralandırmasını etkinleştirir; ve NGenKeyword ile JITKeyword birlikte kullanılır. |
SecurityKeyword |
0x00000400 | Güvenlik olaylarının toplanmasını sağlar. |
AppDomainResourceManagementKeyword |
0x00000800 | Uygulama etki alanı düzeyinde kaynak izleme olaylarının toplanmasını sağlar. |
JITTracingKeyword |
0x00001000 | JIT izleme olaylarının toplanmasını sağlar. |
InteropKeyword |
0x00002000 | Birlikte çalışma olaylarının toplanmasını sağlar. |
ContentionKeyword |
0x00004000 | Çekişme olaylarının koleksiyonunu etkinleştirir. |
ExceptionKeyword |
0x00008000 | Özel durum olaylarının koleksiyonunu etkinleştirir. |
ThreadingKeyword |
0x00010000 | İş parçacığı havuzu olaylarının koleksiyonunu etkinleştirir. |
OverrideAndSuppressNGenEventsKeyword |
0x00040000 | (.NET Framework 4.5 ve sonraki sürümlerde kullanılabilir.) High-overhead anahtar sözcüğünü NGenKeyword bastırır ve NGen modüllerinin içindeki yöntemler için olayların oluşturulmasını engeller. .NET Framework 4.5'den başlayarak, profil oluşturma araçları NGen modüllerindeki yöntemler için olayların oluşturulmasını engellemek için ve NGenKeyword birlikte kullanmalıdırOverrideAndSuppressNGenEventsKeyword . Bu, profil oluşturma aracının NGen modüllerindeki yöntemler hakkında bilgi almak için daha verimli NGen PDB'lerini kullanmasını sağlar. .NET Framework 4 ve önceki sürümlerdeki CLR, NGen PDB'lerin oluşturulmasını desteklemez. Bu önceki sürümlerde CLR tanımaz OverrideAndSuppressNGenEventsKeyword ve NGen modüllerindeki yöntemler için olaylar oluşturmak üzere işleme NGenKeyword alır. |
PerfTrackKeyWord |
0x2000000 | ve ModuleRange olaylarının ModuleLoad koleksiyonunu etkinleştirir. |
StackKeyword |
0x40000000 | CLR yığın izleme olaylarının koleksiyonunu etkinleştirir. |
CLR ETW Rundown Anahtar Sözcükleri
Aşağıdaki tabloda CLR ETW rundown anahtar sözcükleri, bunların değerleri ve ne için kullanıldıkları listelenir.
Rundown anahtar sözcük adı | Değer | Amaç |
---|---|---|
LoaderRundownKeyword |
0x00000008 | ve EndRundownKeyword ile StartRundownKeyword kullanıldığında yükleyici olaylarının toplanmasını sağlar. |
JitRundownKeyword |
0x00000010 | ve EndRundownKeyword ile StartRundownKeyword kullanıldığında JIT ile derlenmiş yöntemler için yöntem ve DCEnd olay koleksiyonunu DCStart etkinleştirir. |
NGenRundownKeyword |
0x00000020 | ve EndRundownKeyword ile StartRundownKeyword kullanıldığında NGen yerel görüntü yöntemleri için yöntem DCStart ve DCEnd olay koleksiyonunu etkinleştirir. Bu anahtar sözcüğün yükü yüksek. Yüklenen her NGen modülü içindeki her yöntem için olaylar oluşturur. Mümkün olduğunda, bu anahtar sözcüğü kullanmak yerine, NGen modüllerinden yöntemler hakkında bilgi almak için profil oluşturma araçları tarafından oluşturulan program veritabanlarını (PDB) kullanmanızı öneririz. Bu tablonun devamında da OverrideAndSuppressNGenEventsRundownKeyword bakın. |
StartRundownKeyword |
0x00000040 | Başlatma çalıştırması sırasında sistem durumunun numaralandırmasını etkinleştirir. |
EndRundownKeyword |
0x00000100 | Bir bitiş çalıştırması sırasında sistem durumunun numaralandırmasını etkinleştirir. |
AppDomainResourceManagementRundownKeyword |
0x00000800 | veya EndRundownKeyword ile StartRundownKeyword kullanıldığında bir AppDomain düzeyde kaynak izleme için olayların toplanmasını sağlar. |
ThreadingKeyword |
0x00010000 | İş parçacığı havuzu olaylarının koleksiyonunu etkinleştirir. |
OverrideAndSuppressNGenEventsRundownKeyword |
0x00040000 | (.NET Framework 4.5 ve sonraki sürümlerde kullanılabilir.) High-overhead anahtar sözcüğünü NGenRundownKeyword bastırır ve NGen modüllerinin içindeki yöntemler için olayların oluşturulmasını engeller. .NET Framework 4.5'den başlayarak, profil oluşturma araçları NGen modüllerindeki yöntemler için olayların oluşturulmasını engellemek için ve NGenRundownKeyword birlikte kullanmalıdırOverrideAndSuppressNGenEventsRundownKeyword . Bu, profil oluşturma aracının NGen modüllerindeki yöntemler hakkında bilgi almak için daha verimli NGen PDB'lerini kullanmasını sağlar. .NET Framework 4 ve önceki sürümlerdeki CLR, NGen PDB'lerin oluşturulmasını desteklemez. Bu önceki sürümlerde CLR tanımaz OverrideAndSuppressNGenEventsRundownKeyword ve NGen modüllerindeki yöntemler için olaylar oluşturmak üzere işleme NGenRundownKeyword alır. |
PerfTrackKeyWord |
0x2000000 | , , ModuleDCEnd ModuleRangeDCStart ve ModuleRangeDCEnd olaylarının ModuleDCStart koleksiyonunu etkinleştirir. |
Çalışma Zamanı Sağlayıcısı için Simge Çözümlemesi için Anahtar Sözcük Bileşimleri
Anahtar sözcükler ve bayraklar | Uygulama etki alanı, derleme, modül yükleme/kaldırma olayları | Yöntem yükleme/kaldırma olayları (dinamik olaylar dışında) | Dinamik yöntem yükleme/yok etme olayları |
---|---|---|---|
LoaderKeyword |
Olayları yükleme ve kaldırma. | Yok. | Yok. |
JITKeyword (+ StartEnumerationKeyword hiçbir şey eklemez) |
Yok. | Olayları yükleyin. | Olayları yükleme ve kaldırma. |
JITKeyword +EndEnumerationKeyword |
Yok. | Olayları yükleme ve kaldırma. | Olayları yükleme ve kaldırma. |
NGenKeyword |
Yok. | Yok. | Geçerli değildir. |
NGenKeyword +StartEnumerationKeyword |
Yok. | Olayları yükleyin. | Geçerli değildir. |
NGenKeyword +EndEnumerationKeyword |
Yok. | Olayları kaldırın. | Geçerli değildir. |
Rundown Sağlayıcısı için Sembol Çözümlemesi için Anahtar Sözcük Birleşimleri
Anahtar sözcükler ve bayraklar | Uygulama etki alanı, derleme, DCStart/DCEnd olayları modülü | YÖNTEM DCStart/DCEnd olayları (dinamik yöntem olayları dahil) |
---|---|---|
LoaderRundownKeyword +StartRundownKeyword |
DCStart Olay. |
Yok. |
LoaderRundownKeyword +EndRundownKeyword |
DCEnd Olay. |
Yok. |
JITKeyword +StartRundownKeyword |
Yok. | DCStart Olay. |
JITKeyword +EndRundownKeyword |
Yok. | DCEnd Olay. |
NGenKeyword +StartRundownKeyword |
Yok. | DCStart Olay. |
NGenKeyword +EndRundownKeyword |
Yok. | DCEnd Olay. |
ETW Olay Düzeyleri
ETW olayları düzeye göre de filtrelenebilir. Düzey 0x5 olarak ayarlanırsa, 0x5 ve altı da dahil olmak üzere tüm düzeylerdeki olaylar (anahtar sözcükler aracılığıyla etkinleştirilen kategorilere ait olaylardır) tetiklenir. Düzey 0x2 olarak ayarlanırsa, yalnızca düzey 0x2 ve altına ait olaylar tetiklenir.
Düzeyler aşağıdaki anlamlara sahiptir:
0x5 - Ayrıntılı
0x4 - Bilgilendirme
0x3 - Uyarı
0x2 - Hata
0x1 - Kritik
0x0 - LogAlways