PAYLOAD_FILTER_PREDICATE-Struktur (tdh.h)

Definiert ein Prädikat für Ereignisnutzlastfilter, das beschreibt, wie in einer Ablaufverfolgungssitzung nach einem einzelnen Feld gefiltert wird.

Syntax

typedef struct _PAYLOAD_FILTER_PREDICATE {
  LPWSTR FieldName;
  USHORT CompareOp;
  LPWSTR Value;
} PAYLOAD_FILTER_PREDICATE, *PPAYLOAD_FILTER_PREDICATE;

Member

FieldName

Der Name des Felds, das im Paketmanifest gefiltert werden soll.

CompareOp

Der Nutzlastoperator, der für den Vergleich verwendet werden soll.

Dieser Member kann einer der Werte für die in der Tdh.h-Headerdatei definierte PAYLOAD_OPERATOR-Enumeration sein.

Wert Bedeutung
PAYLOADFIELD_EQ
0
Der Wert des FieldName-Parameters ist gleich dem numerischen Wert der Zeichenfolge im Value-Element .

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_NE
1
Der Wert des FieldName-Parameters ist nicht gleich dem numerischen Wert der Zeichenfolge im Value-Element .

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_LE
2
Der Wert des FieldName-Parameters ist kleiner oder gleich dem numerischen Wert der Zeichenfolge im Value-Element .

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_GT
3
Der Wert des FieldName-Parameters ist größer als der numerische Wert der Zeichenfolge im Value-Element .

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_LT
4
Der Wert des FieldName-Parameters ist kleiner als der numerische Wert der Zeichenfolge im Value-Element .

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_GE
5
Der Wert des FieldName-Parameters ist größer oder gleich dem numerischen Wert der Zeichenfolge im Value-Element .

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_BETWEEN
6
Der Wert des FieldName-Parameters liegt zwischen den beiden numerischen Werten in der Zeichenfolge im Value-Element . Der PAYLOADFIELD_BETWEEN-Operator verwendet ein geschlossenes Intervall (LowerBound <= FieldValue <= UpperBound).

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert zwei Werte im Value-Element . Die beiden Werte sollten durch ein Komma (",") getrennt werden.

PAYLOADFIELD_NOTBETWEEN
7
Der Wert des FieldName-Parameters befindet sich nicht zwischen den beiden numerischen Werten in der Zeichenfolge im Value-Element .

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert zwei Werte im Value-Element . Die beiden Werte sollten durch ein Komma (",") getrennt werden.

PAYLOADFIELD_MODULO
8
Der Wert des FieldName-Parameters ist das Modulo des numerischen Werts in der Zeichenfolge im Value-Element . Der Operator kann für regelmäßige Stichprobenentnahmen verwendet werden.

Dieser Operator dient zum Vergleichen ganzer Zahlen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_CONTAINS
20
Der Wert des FieldName-Parameters enthält den Teilzeichenfolgenwert im Value-Element . Bei Zeichenfolgenvergleichen wird die Groß-/Kleinschreibung nicht beachtet.

Dieser Operator dient zum Vergleichen von Zeichenfolgen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_DOESNTCONTAIN
21
Der Wert des FieldName-Parameters enthält nicht die Teilzeichenfolge im Value-Element . Bei Zeichenfolgenvergleichen wird die Groß-/Kleinschreibung nicht beachtet.

Dieser Operator dient zum Vergleichen von Zeichenfolgen und erfordert einen Wert im Value-Element .

PAYLOADFIELD_IS
30
Der Wert des FieldName-Parameters ist identisch mit dem Wert der Zeichenfolge im Value-Element . Bei Zeichenfolgenvergleichen wird die Groß-/Kleinschreibung nicht beachtet.

Dieser Operator dient zum Vergleichen von Zeichenfolgen oder anderen nicht ganzzahligen Werten und erfordert einen Wert im Value-Member .

PAYLOADFIELD_ISNOT
31
Der Wert des FieldName-Parameters ist nicht identisch mit dem Wert der Zeichenfolge im Value-Element . Bei Zeichenfolgenvergleichen wird die Groß-/Kleinschreibung nicht beachtet.

Dieser Operator dient zum Vergleichen von Zeichenfolgen oder anderen nicht ganzzahligen Werten und erfordert einen Wert im Value-Member .

PAYLOADFIELD_INVALID
32
Ein ungültiger Wert des Nutzlastoperators.

Value

Die Zeichenfolge, die einen oder einen Wert enthält, der je nach CompareOp-Member verglichen werden soll.

Hinweise

Auf Windows 8.1,Windows Server 2012 R2 und höher können Ereignisnutzlastfilter von der EnableTraceEx2-Funktion und den ENABLE_TRACE_PARAMETERS- und EVENT_FILTER_DESCRIPTOR-Strukturen verwendet werden, um nach dem spezifischen Inhalt des Ereignisses in einer Protokollierungssitzung zu filtern.

Die PAYLOAD_FILTER_PREDICATE-Struktur wird mit der TdhCreatePayloadFilter-Funktion verwendet, um einen einzelnen Nutzlastfilter für eine einzelne Nutzlast zu erstellen, die mit der EnableTraceEx2-Funktion verwendet werden soll. Ein einzelner Nutzlastfilter kann mithilfe der TdhAggregatePayloadFilters-Funktion auch mit anderen einzelnen Nutzlastfiltern aggregiert werden.

Jedes Feld verfügt über einen Typ, der im Anbietermanifest angegeben ist und im Fieldname-Member der PAYLOAD_FILTER_PREDICATE-Struktur verwendet werden kann, um nach diesem Feld zu filtern.

Das CompareOp-Element gibt den Operator an, der für die Nutzlastfilterung verwendet werden soll. Die Nutzlastfilterung unterstützt das Filtern nach einer Zeichenfolge (einschließlich einer GUID) und ganzen Zahlen (einschließlich TDH_INTYPE_FILETIME). Das Filtern nach Gleitkommazahlen, einem binären Blob (einschließlich TDH_INTYPE_POINTER) und strukturierten Daten (SID und SYSTEMTIME) wird nicht unterstützt.

Das Value-Element enthält eine Zeichenfolge des Werts oder der Werte, die mit dem Wert des Fieldname-Elements verglichen werden sollen. Das Value-Element wird von einer Zeichenfolge in den Typ des Fieldname-Elements konvertiert, wie im Manifest angegeben.

Bei allen Zeichenfolgenvergleichen wird die Groß- und Kleinschreibung beachtet. Die Zeichenfolge im Value-Element ist UNICODE, wird jedoch in ANSI konvertiert, wenn der im Manifest angegebene Typ ANSI ist.

Ein Fieldname-Element , das eine GUID enthält, kann nur verglichen werden, wenn das CompareOp-Element entweder die PAYLOADFIELD_IS oder PAYLOADFIELD_ISNOT für den Nutzlastoperator enthält. Die Zeichenfolge, die eine GUID im Value-Element darstellt, muss die geschweiften Klammern enthalten ({00000000-0000-0000-0000-000000000000}z. B. ).

Beispiele

Ein Beispiel, das die PAYLOAD_FILTER_PREDICATE-Struktur und die TdhCreatePayloadFilter-Funktion zum Erstellen von Nutzlastfiltern verwendet, die bei der Filterung für bestimmte Bedingungen in einer Protokollierungssitzung verwendet werden, finden Sie im Beispiel für die EnableTraceEx2-Funktion .

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8.1 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 R2 [nur Desktop-Apps]
Kopfzeile tdh.h

Weitere Informationen

ENABLE_TRACE_PARAMETERS

EVENT_DESCRIPTOR

EVENT_FILTER_DESCRIPTOR

EnableTraceEx2

TdhAggregatePayloadFilters

TdhCreatePayloadFilter