Константы средства ведения журнала ядра NT
Используйте следующие константы, чтобы определить сеанс средства ведения журнала ядра NT.
Константа | Описание |
---|---|
SystemTraceControlGuid | GUID элемента управления для сеанса трассировки событий NT Kernel Logger. |
KERNEL_LOGGER_NAME | Имя сеанса трассировки событий nt kernel Logger. |
Сеанс nt Kernel Logger является единственным сеансом, который может принимать события от поставщиков событий ядра. Сеанс средства ведения журнала ядра NT не принимает события от других поставщиков. Если требуется записывать события ядра и события от других поставщиков, необходимо использовать два отдельных сеанса, а потребителю потребуется объединить события из файлов журнала для получения комплексных результатов.
Трассировка событий Windows использует макрос DEFINE_GUID для определения идентификаторов GUID. Чтобы использовать SystemTraceControlGuid в коде, необходимо включить #define INITGUID перед включением Evntrace.h. Затем компилятор преобразует DEFINE_GUID в константный GUID.
Следующие значения определяют возможные идентификаторы GUID класса для событий ядра, которые может отслеживать сеанс nt Kernel Logger. Вы можете передать идентификаторы GUID класса в функцию SetTraceCallback , чтобы настроить специальную обработку для каждого класса событий.
Класс | GUID |
---|---|
ALPC |
|
DiskIo |
|
HWConfig и SystemConfig |
|
FileIo |
|
Изображение |
|
PageFault_V2 |
|
PerfInfo |
|
Процесс |
|
Реестр |
|
SplitIo |
|
Tcpip |
|
Поток |
|
UdpIp |
|
Комментарии
Чтобы использовать идентификаторы GUID, скопируйте определения GUID, которые вы хотите использовать, в исходный код. Необходимо включить #define INITGUID перед определениями, которые вы включаете в исходный код, чтобы компилятор превратил DEFINE_GUID в константный GUID. Например,
#define INITGUID
DEFINE_GUID ( /* 3d6fa8d1-fe05-11d0-9dda-00c04fd7ba7c */
ThreadGuid,
0x3d6fa8d1,
0xfe05,
0x11d0,
0x9d, 0xda, 0x00, 0xc0, 0x4f, 0xd7, 0xba, 0x7c
);
DEFINE_GUID ( /* 3d6fa8d0-fe05-11d0-9dda-00c04fd7ba7c */
ProcessGuid,
0x3d6fa8d0,
0xfe05,
0x11d0,
0x9d, 0xda, 0x00, 0xc0, 0x4f, 0xd7, 0xba, 0x7c
);
В качестве альтернативы можно самостоятельно определить константный GUID для определений GUID. Например,
static const GUID ThreadGuid =
{ 0x3d6fa8d0, 0xfe05, 0x11d0, { 0x9d, 0xda, 0x00, 0xc0, 0x4f, 0xd7, 0xba, 0x7c } };