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!

Splunk Decoded: Service Maps vs Service Analyzer Tree View vs Flow Maps

It’s Monday morning, and your phone is buzzing with alert escalations – your customer-facing portal is running ...

What’s New in Splunk Observability – September 2025

What's NewWe are excited to announce the latest enhancements to Splunk Observability, designed to help ITOps ...

Fun with Regular Expression - multiples of nine

Fun with Regular Expression - multiples of nineThis challenge was first posted on Slack #regex channel ...