Splunk Search

Return fields based on boolean value

hegga
Explorer

Hi,

I have a saved search used by a dashboard which should return different fields based on the boolean value of a string. For example:

if $show_raw_log$ == 1 do
   | fields _raw

if $show_raw_log$ == 0 do
   | fields _time,  sender, recipient, message_subject, attachment, vendor_action, message_id
   | fields - _raw

How can I achieve this in Splunk?

Tags (1)
0 Karma
1 Solution

niketn
Legend

@hegga, more details please. What sets the Boolean value $show_raw_log$, is it going to be a form input, a search or a drilldown event?

In any case you can use eval tag to set a query string token to be passed to your actual search.

<eval token="queryString">if($show_raw_log$==1, "| fields _raw", "| fields _time,  sender, recipient, message_subject, attachment, vendor_action, message_id | fields - _raw")</eval>

Then use token queryString in your actual search.
PS: Where ever in your current code you are setting $show_raw_log$ eval tag similar to the one above needs to be added, which implies $show_raw_log$ might not exist or may be represented by some other field/value or token.

____________________________________________
| makeresults | eval message= "Happy Splunking!!!"

View solution in original post

0 Karma

niketn
Legend

@hegga, more details please. What sets the Boolean value $show_raw_log$, is it going to be a form input, a search or a drilldown event?

In any case you can use eval tag to set a query string token to be passed to your actual search.

<eval token="queryString">if($show_raw_log$==1, "| fields _raw", "| fields _time,  sender, recipient, message_subject, attachment, vendor_action, message_id | fields - _raw")</eval>

Then use token queryString in your actual search.
PS: Where ever in your current code you are setting $show_raw_log$ eval tag similar to the one above needs to be added, which implies $show_raw_log$ might not exist or may be represented by some other field/value or token.

____________________________________________
| makeresults | eval message= "Happy Splunking!!!"
0 Karma

hegga
Explorer

Thanks @niketnilay! I'd wish you'd submitted this as an answer, so I could accept it. The boolean field is input from a checkbox in a dashboard which will be used in a search.

0 Karma

niketn
Legend

@hegga, I have converted to answer. Please accept 🙂

____________________________________________
| makeresults | eval message= "Happy Splunking!!!"
0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

[Puzzles] Solve, Learn, Repeat: Character substitutions with Regular Expressions

This challenge was first posted on Slack #puzzles channelFor BORE at .conf23, we had a puzzle question which ...

Splunk Community Badges!

  Hey everyone! Ready to earn some serious bragging rights in the community? Along with our existing badges ...

[Puzzles] Solve, Learn, Repeat: Matching cron expressions

This puzzle (first published here) is based on matching timestamps to cron expressions.All the timestamps ...