Thanks for the pointers. I ended up using map, which I've used in the past to iterate over array data. It was the reason I was thinking I could use $xxx$ references in later searches. I'd appreciate any feedback on these end results. index=iis sourcetype=requests sc_status=503
| rex field=cs_uri_stem "(?i>(?<ServiceURI>^\S*\.svc\/)"
| stats count by host,ServiceURI
| where count > 25
| eval ErrCount=count,ErrHost=host
| fields ErrCount,ErrHost,ServiceURI
| map search="
search index=iis sourcetype=services earliest=-24h host=$ErrHost$
| makemv delim=\",\" RootURIs | mvexpand RootURIs
| where RootURIs != \"\"
| eval restart=if(like($ServiceURI$,RootURIs.\"%\"),1,0)
| where restart=1
| eval ErrCount=$ErrCount$,ErrHost=\"$ErrHost$\",ServiceURI=\"$ServiceURI$\"
| table ErrCount,ErrHost,ServiceURI,AppName,RootURIs"
maxsearches=200 I spent a lot of time trying to figure out how to do a (sourcetype=X or sourcetype=Y) type of thing, but I have the feeling the need to use earliest=-24h in that second part of the search introduces some limitations as far as my options go for how to accomplish this. It also "feels wrong" to need that last eval to re-create the desired fields from the first search, but it was the only thing I tried that works. I really hate the way map requires a string representation of the secondary search -- my real secondary search has to apply some nasty regex to clean up that RootURIs list and escaping the already-escaped quotes and slashes is somewhat nightmarish and hardly yields anything human-readable.
... View more