Skip to content

[reciever/windowseventlog] Parse additional fields #27810

Closed as not planned
Closed as not planned
@BinaryFissionGames

Description

@BinaryFissionGames

Component(s)

receiver/windowseventlog

Is your feature request related to a problem? Please describe.

There are additional fields on the windows event XML schema that are useful to users, but we don't collect into the structured output of the receiver. It would be good to capture some of these fields.

Describe the solution you'd like

Add the following fields to the parsed output of the windows event log receiver:

  1. Security (see: SystemPropertiesType Schema)
    a. This field may contain the UserID of the user that triggered the action, which would be useful for auditing purposes
  2. Execution (see: SystemPropertiesType Schema)
    a. This field gives useful information about the process that triggered the event log when present.

Additionally, it'd be useful to scrape the UserData field. Unfortunately, the schema here is more free-form, which makes it more difficult to map to the key:value structure we have.

One idea could be some recursive structure like:

{
  tag: string
  attributes: map[string]string
  charData: string
  children: []XmlElement 
}: XMLElement

A structure like this could properly represent arbitrary XML, I believe.

Another idea would be to just keep the original XML for this field and store it on the log as unparsed text.


I have also considered adding the xml namespaces (the xmlns attribute on the root tag) as an additional field, but it seems like this tag is always the same and doesn't seem to really add any information to a parsed log.

Describe alternatives you've considered

One alternative idea would be to use the raw flag, in addition to some XML parsing step. Currently, I don't think there's an XML parser operator, or a converter for OTTL, and I think that could lead to an "unwieldy" representation of the log.

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions