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

Consulte también

TraceLoggingWrite

Macros contenedoras traceLogging