Макрос TraceLoggingSocketAddress (traceloggingprovider.h)
Макрос-оболочка TraceLogging , который добавляет в событие поле с адресом сокета.
Синтаксис
void TraceLoggingSocketAddress(
[in] pValue,
[in] cbValue,
[in, optional] __VA_ARGS__
);
Параметры
[in] pValue
Указатель на структуру sockaddr.
[in] cbValue
Размер (в байтах) значения, на который указывает параметр pValue .
Примечание
Объем данных, необходимых для поля sockaddr, зависит от типа адреса. Если данные хранятся в переменной объединения, обязательно задайте для параметра cbValue размер правильного члена объединения (или размер объединения), чтобы избежать усечения данных.
[in, optional] __VA_ARGS__
Необязательные параметры имени, описания и тегов для определения поля.
TraceLoggingSocketAddress можно указать с 2, 3, 4 или 5 параметрами. Если параметр не указан, будет использоваться значение по умолчанию. Например, выражение TraceLoggingSocketAddress(&x.sockAddr, sizeof(x.sockAddr))
будет эквивалентно TraceLoggingSocketAddress(&x.sockAddr, sizeof(x.sockAddr), "&x.sockAddr", "", 0)
.
[in, optional] name
Имя, используемое для поля события. Если он указан, параметр name должен быть строковым литералом (не переменной) и не должен содержать символы "\0". Если этот параметр не указан, имя поля события будет основано на pValue.
[in, optional] description
Описание значения поля события. Если он указан, параметр description должен быть строковым литералом и будет включен в PDB.
[in, optional] tags
Целочисленное значение константы времени компиляции. Низкие 28 бит значения будут включены в метаданные поля. Семантика этого значения определяется потребителем события. Во время обработки события это значение можно получить из поля EVENT_PROPERTY_INFO Теги.
Возвращаемое значение
None
Remarks
TraceLoggingSocketAddress(pValue, cbValue, ...)
можно использовать в качестве параметра для вызова макроса TraceLoggingWrite . Каждый параметр TraceLoggingSocketAddress добавляет одно поле к событию.
Значением может быть любой тип windows sockaddr, например SOCKADDR, SOCKADDR_IN, SOCKADDR_IN6, SOCKADDR_STORAGE и т. д. Событие будет записывать необработанные двоичные данные и их размер. Декодер событий будет использовать sa_family
поле для определения фактического типа адреса сокета.
Примечание
Не все декодеры поддерживают все типы семейства sockaddr. Если обнаружен неподдерживаемый sockaddr, декодер может декодировать поле как необработанные двоичные данные, а не форматировать его как адрес.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | traceloggingprovider.h |