en-US/about_PSEtwEventArgs.help.txt
TOPIC
about_psetweventargs SHORT DESCRIPTION Each event object returned by this module contains some properties that describe the event. This document will go through each of these properties and describe what they represent. LONG DESCRIPTION The `EtwEventArgs` object is designed to present a user friendly object that contains the event data returned by the ETW trace session. Internally it uses the following Win32 structures: + EVENT_RECORD + EVENT_HEADER + EVENT_DESCRIPTOR + TRACE_EVENT_INFO + EVENT_PROPERTY_INFO See the documentation of these structures to find out more information on the properties that `EtwEventArgs` exposed. The `EtwEventArgs` object contains the following properties: |Name|Type|Description| |-|-|-| |ProviderId|Guid|The provider guid| |ProviderName|string?|The name of the provider| |ProcessId|int|The process that emitted the event| |ThreadId|int|The thread that emitted the event| |TimeStamp|DateTime|When the event was emitted| |ActivityId|Guid|Identifier that can relate multiple events to each other| |Id|short|A unique identifier for manifest based events| |Version|byte|The version of the manifest definition for the `Id`| |Channel|byte|Designed to enable special event processing| |ChannelName|string?|The name of the channel| |Level|byte|The event's severity or importance| |LevelName|string?|The name of the level| |OpCode|byte|Marks the event with special semantics according to the provider| |OpCodeName|string?|The name of the OpCode| |Task|int16|Identifiers the event with a provider specific value| |TaskName|string?|The name of the task| |Keyword|int64|The keywords for the event| |KeywordNames|string[]|The names of each keyword for the event| |Tags|int|Custom tag for the event that is provider specific| |EventData|byte[]|Only populated when `-IncludeRawData` was set, this is the event user data as a byte array| |Properties|EventPropertyInfo[]|The properties of the event, see below for more information| |EventMessage|string?|The event message, if one is present, will contain the error message if there was a failure parsing the event| Note: `?` after the type means the value can be `null` in certain conditions. The `*Name` properties will only be set if the event contains the required event data and could be parsed. The numeric values for each of those properties will always be set for every event though. The properties of the event are contained in the `Properties` property which is an array of `EventPropertyInfo` objects. The `EventPropertyInfo` object contains the following properties: |Name|Type|Description| |-|-|-| |Name|string?|The name of the property, can be `null` if no name is provided| |Value|object|The property value, the type of this depends on the property itself| |DisplayValue|string|The string formatted value as provided by Windows| |Tags|int|Additional semantic data of the property, the meaning of the value is dependent on the event provider| The known types that `Value` can be set to are: + Various numeric types `byte`, `sbyte`, `int16`, `uint16`, `int32`, `uint32`, `int64`, `uint64`, `float`, `double`, `decimal` + `byte[]` + `string` + `DateTime` + `bool` + `Guid` + `System.Net.IPAddress` + `System.Net.SocketAddress` + `System.Xml.XmlDocument` The value can also be an array of these types or an array of `EventPropertyInfo` objects if the value was a structure itself. |