TraceLoggingOptionGroup macro (traceloggingprovider.h)

TraceLogging macro for use in TRACELOGGING_DEFINE_PROVIDER to specify a provider group.

Most TraceLogging providers are not associated with a provider group and do not need to use TraceLoggingOptionGroup.

Syntax

void TraceLoggingOptionGroup(
  [in]  g1,
  [in]  g2,
  [in]  g3,
  [in]  g4,
  [in]  g5,
  [in]  g6,
  [in]  g7,
  [in]  g8,
  [in]  g9,
  [in]  g10,
  [in]  g11
);

Parameters

[in] g1

The first 4 bytes of the GUID.

[in] g2

The next 2 bytes of the GUID.

[in] g3

The next 2 bytes of the GUID.

[in] g4

The next byte of the GUID.

[in] g5

The next byte of the GUID.

[in] g6

The next byte of the GUID.

[in] g7

The next byte of the GUID.

[in] g8

The next byte of the GUID.

[in] g9

The next byte of the GUID.

[in] g10

The next byte of the GUID.

[in] g11

The next byte of the GUID.

Return value

None

Remarks

If you want your provider to be associated with an ETW provider group, add the TraceLoggingOptionGroup macro to the TRACELOGGING_DEFINE_PROVIDER declaration to specify the provider's group GUID.

A provider can be a member of no more than one group. The semantics of group membership are determined by ETW controllers that subscribe a session to a group via EnableTraceEx2 with EVENT_ENABLE_PROPERTY_PROVIDER_GROUP.

Examples

TRACELOGGING_DEFINE_PROVIDER(
    g_hMyProvider,
    "MyProvider",
    // {b3864c38-4273-58c5-545b-8b3608343471}
    (0xb3864c38,0x4273,0x58c5,0x54,0x5b,0x8b,0x36,0x08,0x34,0x34,0x71),
    // {798d0c76-4209-5932-a2af-2d94a2e66c45}
    TraceLoggingOptionGroup(0x798d0c76,0x4209,0x5932,0xa2,0xaf,0x2d,0x94,0xa2,0xe6,0x6c,0x45));

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header traceloggingprovider.h

See also

TraceLoggingWrite

TraceLogging wrapper macros

EnableTraceEx2

Provider Traits