Как назначаются значения флагов?
Флаги трассировки определяются независимо каждым поставщиком трассировки. В результате значения флагов для одного поставщика могут означать что-то совершенно отличное от значений флагов для другого поставщика. Чтобы интерпретировать значения, необходимо понимать поставщика.
Как правило, флаги трассировки представляют все более подробные уровни отчетности.
Значения флагов определяются в WPP_DEFINE_BIT элементах макроса WPP_CONTROL_GUIDS , например:
#define WPP_CONTROL_GUIDS \
WPP_DEFINE_CONTROL_GUID(GUIDFriendlyName, (ControlGUID), \
WPP_DEFINE_BIT(Error) \
WPP_DEFINE_BIT(Unusual) \
WPP_DEFINE_BIT(Noise) )
Windows присваивает каждому элементу WPP_DEFINE_BIT последовательное битовое значение, начинающееся с 1. Например, он назначает 1 первому биту (Ошибка), 2 второму биту (необычный) и 4 третьему биту (Шум).
При запуске сеанса трассировки используйте битовое значение для представления флагов. Например, следующая команда использует Tracelog для запуска сеанса трассировки с поставщиком трассировки , определенным ранее. Он задает для флага значение 4 (шум).
tracelog -start MyTrace -guid MyDriver.guid -flags 4