Splunk Search

How to Capture optional fields?

JohnnyTsunami
New Member

rex command im using:  (?:\w+\s\:\s)(?<command>[^\;]+)?\;\s(?<Datainput>[^\s]+)\s\;\s(?<Extra>[^\s]+)

Data

1) command : TTY-unknown ; data ; ... ;
2) command : Random blurb ; TTY-unknown ; data ; ... ;
3) command : Some other blurb ; TTY-unknown ; data ; ... ;
4) command : TTY-unknown ; data ; ... ;
5) command : TTY-unknown ; data ; ... ;

When I rex this data, what i get is:

  command TTY datainput
1 unknown data ...
2 Random blurb unknown data
3 Some other blurb unknown data
4 unknown data ...
5 unknown data ...

What I want to get is data that doesn't skip the data in 2 and 3, so it would look like this.  How do I accomplish this?

  command TTY datainput
1   unknown data
2 Random blurb unknown data
3 Some other blurb unknown data
4   unknown data
5   unknown data
Labels (1)
Tags (1)
0 Karma

richgalloway
SplunkTrust
SplunkTrust

IME, when fields are optional it is much simpler to use multiple rex commands - one for each optional field, plus one or more others for the static fields.

---
If this reply helps you, Karma would be appreciated.
0 Karma
Get Updates on the Splunk Community!

Splunk Observability for AI

Don’t miss out on an exciting Tech Talk on Splunk Observability for AI! Discover how Splunk’s agentic AI ...

[Puzzles] Solve, Learn, Repeat: Dereferencing XML to Fixed-length events

This challenge was first posted on Slack #puzzles channelFor a previous puzzle, I needed a set of fixed-length ...

Stay Connected: Your Guide to December Tech Talks, Office Hours, and Webinars!

What are Community Office Hours? Community Office Hours is an interactive 60-minute Zoom series where ...