Splunk Search

How to find the records based on another search but each happened afterwards

shancao
Engager

Hi, I would like to implement some splunk alert to check if there's any special event that happened after a certain event, all the events are grouped by the same request-id,  wonder if you could help on this, thanks

queryA -   index=app  class=ClassA  conditionA=aVal | fields  rid, _ time | table rid, _time,   each result (rid, _time) is unique

queryB -   index=app  class=ClassB conditionB=bVal   rid=queryA.rid and _time > queryA._time

I would like to get the alert if queryB has a result.

 

If it is represented as a SQL, it would be like this 

select  field1, fiedl2 ....  from queryB as B, 
             (select id, _time from queryA where  afield1=someval and afield2=val2) as A
where B.id=A.id and B._time > A._time

Any help would be greatly appreciated, thanks

Labels (2)
0 Karma
1 Solution

VatsalJagani
SplunkTrust
SplunkTrust

You can try something like this:

index=app ((class=ClassA  conditionA=aVal) OR (class=ClassB conditionB=bVal))
| eval time_classA=if((class=ClassA conditionA=aVal), _time, null())
| eval time_classB=if((class=ClassB conditionB=bVal), _time, null())
| stats count, latest(time_classA) as time_classA, latest(time_classB) as time_classB by rid
| where time_classB > time_classA

 

Hope this helps. Kindly accept the solution if it is helpful.

View solution in original post

VatsalJagani
SplunkTrust
SplunkTrust

You can try something like this:

index=app ((class=ClassA  conditionA=aVal) OR (class=ClassB conditionB=bVal))
| eval time_classA=if((class=ClassA conditionA=aVal), _time, null())
| eval time_classB=if((class=ClassB conditionB=bVal), _time, null())
| stats count, latest(time_classA) as time_classA, latest(time_classB) as time_classB by rid
| where time_classB > time_classA

 

Hope this helps. Kindly accept the solution if it is helpful.

Get Updates on the Splunk Community!

Splunk Observability as Code: From Zero to Dashboard

For the details on what Self-Service Observability and Observability as Code is, we have some awesome content ...

[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 ...

Shape the Future of Splunk: Join the Product Research Lab!

Join the Splunk Product Research Lab and connect with us in the Slack channel #product-research-lab to get ...