I am trying to truncate windows events to remove the explainatory text in the full_message field.
I am using nxlog to forward events to greaylog.
An example would be:
07/16/10 11:18:30 AM
SourceName=Microsoft Windows security auditing.
Message=An account was successfully logged on.
This event is generated when a logon session is created. It is generated on the computer that was accessed.
The subject fields indicate the account on the local system which requested the logon. This is most commonly a service such as the Server service, or a local process such as Winlogon.exe or Services.exe.
The logon type field indicates the kind of logon that occurred. The most common types are 2 (interactive) and 3 (network).
The New Logon fields indicate the account for whom the new logon was created, i.e. the account that was logged on.
The network fields indicate where a remote logon request originated. Workstation name is not always available and may be left blank in some cases.
The authentication information fields provide detailed information about this specific logon request.
- Logon GUID is a unique identifier that can be used to correlate this event with a KDC event.
- Transited services indicate which intermediate services have participated in this logon request.
- Package name indicates which sub-protocol was used among the NTLM protocols.
- Key length indicates the length of the generated session key. This will be 0 if no session key was requested.
In this example I am trying to remove everything after "This event is generated "
I used an extractor to replace this text with a space but that created a new field with the other text duplicated.
My extractor regular expression was
(?:This event is generated)(.*$)
Now I am looking at pipelines. Something like this:
rule “full message truncate”
let temp_field=regex("(?:This event is generated)(.*$)");
This obviously does not work. (Expected type string for argument name but found RegexMatchResult in call to function remove_from_stream)
I am wondering am I going the right way to solve this problem and if so can anyone help?