Splunk Search

Is it currently possible to somehow create a conditional macro expansion?

shubs
Engager

Hi all,
Is it currently possible to somehow create a conditional macro expansion?

For example, I have different list of hosts and wanted to expand base the macro argument.

`myhosts(old)` would expand to
host=hostname1 OR host=hostname2


`myhosts(new)` would expand to
host=hostname3 OR host=hostname4

I looked into different functions to somehow implement it but could not find a solution 😞
Thank you.

Tags (1)
0 Karma

shubs
Engager

Nice! A simple solution. Thanks 🙂

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

Macros are just text expansions. You could build the condition into your macro

("$select$"=="new" AND (host=="hostA" OR host=="hostB")) OR ("$select$"=="old" AND (host=="hostC" OR host=="hostD"))

and use it for example like this

| where `myhosts("old")`
Get Updates on the Splunk Community!

.conf25 Community Recap

Hello Splunkers, And just like that, .conf25 is in the books! What an incredible few days — full of learning, ...

Splunk App Developers | .conf25 Recap & What’s Next

If you stopped by the Builder Bar at .conf25 this year, thank you! The retro tech beer garden vibes were ...

Congratulations to the 2025-2026 SplunkTrust!

Hello, Splunk Community! We are beyond thrilled to announce our newest group of SplunkTrust members!  The ...