Поделиться через


Пример 7. Настройка префикса сообщения трассировки

Каждое сообщение трассировки начинается с префикса сообщения трассировки , состоящего из данных о сообщении трассировки. Формат префикса сообщения трассировки хранится в переменной среды %TRACE_FORMAT_PREFIX%. Изменив значение переменной среды, можно настроить префикс сообщения трассировки для отображения необходимых данных о сообщении трассировки в наиболее удобном для вас формате. Переменные в префиксе сообщения трассировки по умолчанию и все переменные, которые можно использовать в префиксе сообщения трассировки, описаны в разделе Префикс сообщения трассировки.

На следующем экране показан префикс сообщения трассировки по умолчанию. Сообщения трассировки были созданы Tracedrv, примером драйвера с поддержкой трассировки в комплекте драйверов Windows (WDK).

[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]IOCTL = 1
[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]Hello, 1 Hi
[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]Hello, 2 Hi
...

Префикс по умолчанию имеет следующий формат.

[%9!d!]%8!04X!.%3!04X!::%4!s! [%1!s!]

который представляет следующие данные:

[CPUNumber]ProcessID.ThreadID::SystemTime [MessageGUIDFriendlyName]

Где MessageGUIDFriendlyName по умолчанию — это имя каталога, в котором был создан поставщик трассировки.

Чтобы создать новый префикс сообщения трассировки, используйте команду set , чтобы сбросить значение переменной среды %TRACE_FORMAT_PREFIX%. Например,

set TRACE_FORMAT_PREFIX=%2!s!: %!FUNC!: %8!04x!.%3!04x!: %4!s!:

Эта команда задает префикс сообщения трассировки в следующем формате:

SourceFile_LineNumber: FunctionName: ProcessID.ThreadID: SystemTime 

В результате в выходных данных Tracefmt используется новый префикс сообщения трассировки, как показано на следующем экране:

tracedrv_c258: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  IOCTL = 1
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  Hello, 1 Hi
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  Hello, 2 Hi
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998:  Hello, 3 Hi

...

Примечание Если вы задаете префикс трассировки в командном или пакетном файле, где символ процента представляет переменную для параметра командной строки, используйте два последовательных символа процента для переменных префикса. Например, чтобы включить системное время в префикс, введите %%4.