Macro TraceLoggingValue (traceloggingprovider.h)
Macro contenedora traceLogging para C++ que agrega un campo con un tipo deducido automáticamente al evento.
Sintaxis
void TraceLoggingValue(
[in] value,
[in, optional] __VA_ARGS__
);
Parámetros
[in] value
Valor del campo de evento.
[in, optional] __VA_ARGS__
Parámetros de nombre, descripción y etiquetas opcionales para la definición de campo.
TraceLoggingValue se puede especificar con 1, 2, 3 o 4 parámetros. Si no se especifica un parámetro, se usará un valor predeterminado. Por ejemplo, TraceLoggingValue(a+b)
es equivalente a TraceLoggingValue(a+b, "a+b", "", 0)
.
[in, optional] name
Nombre que se va a usar para el campo de evento. Si se proporciona, el parámetro name debe ser un literal de cadena (no una variable) y no debe contener caracteres '\0'. Si no se proporciona, el nombre del campo de evento se basará en el valor .
[in, optional] description
Descripción del valor del campo de evento. Si se proporciona, el parámetro description debe ser un literal de cadena y se incluirá en la PDB.
[in, optional] tags
Valor entero constante en tiempo de compilación. Los 28 bits inferiores del valor se incluirán en los metadatos del campo. El consumidor de eventos define la semántica de este valor. Durante el procesamiento de eventos, este valor se puede recuperar del campo Etiquetas de EVENT_PROPERTY_INFO .
Valor devuelto
None
Observaciones
En el código de C++, TraceLoggingValue(value, ...)
se puede usar como parámetro para una invocación de una macro TraceLoggingWrite . Cada parámetro TraceLoggingValue agrega un campo al evento.
El tipo del campo en el evento ETW se deduce automáticamente del tipo de la expresión de valor . Según el tipo de valor, TraceLoggingValue(value, ...)
es equivalente a una de las macros contenedoras de TraceLogging estándar de la siguiente manera:
Tipo de valor | Equivalente a | Notas |
---|---|---|
bool |
TraceLoggingBoolean | |
char |
TraceLoggingChar | Solo para char, no para char firmado o unsigned char. |
char16_t |
TraceLoggingChar16 | |
wchar_t |
TraceLoggingWChar | Solo para wchar_t nativos, no para USHORT. |
intNN_t |
TraceLoggingIntNN | Para char, short, int, long y long con signo. |
uintNN_t |
TraceLoggingUIntNN | Para unsigned char, short, int, long y long. |
float |
TraceLoggingFloat32 | |
double |
TraceLoggingFloat64 | |
GUID |
TraceLoggingGuid | |
FILETIME |
TraceLoggingFileTime | |
SYSTEMTIME |
TraceLoggingSystemTime | |
SID* |
TraceLoggingSid | Debe ser distinto de NULL y debe apuntar a un valor válido SID . |
void* |
TraceLoggingPointer | Registra el valor del puntero, no los datos a los que se hace referencia. |
char* |
TraceLoggingString | Cadena de CP_ACP terminada en cero. NULL se trata como "" . |
char16_t* |
TraceLoggingString16 | Cadena UTF-16 terminada en cero. NULL se trata como u"" . |
wchar_t* |
TraceLoggingWideString | Cadena UTF-16 terminada en cero. NULL se trata como L"" . |
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | traceloggingprovider.h |