Splunk Search

Use subsearch results as data in outer search



I have a subsearch which searches for certain events (suspicious requests that sometimes happen after a user has logged into my system) inside an apache access log. The fields I need are the IP and the timestamp. The IP is used as a search query in the outer search, which is a query to an authentication log. In the final results, I need all the data of the outer search (the auth log), the IP (which is part of both logs) and the timestamp that comes from the access log (which is not part of the search condition).

How can I achieve this results set the most performant way? The set and join commands are too slow as the auth log is very large. What I'm currently doing is (in pseudo code)

search_auth_log [ search_access_log | fields +ip ] OR search_access_log | transaction ip 

It works, but the drawback is that I have to do the subsearch query two times. Is there a better solution?

Thanks and best regards

Tags (1)
0 Karma


The best approach is probably to combine the searches into a disjunction and not use join at all.

(<search 1>)  OR (<search 2>) 

and then pipe that to something like

| stats dc(user) by IP

Can you give more details of the exact searches?

0 Karma
Did you miss .conf21 Virtual?

Good news! The event's keynotes and many of its breakout sessions are now available online, and still totally FREE!