Splunk Search

How to count pass of fail rate from all if conditions


I have the following , I want to know how to calculate rate on rule1, rule 2, rule3.... pass and fail rates(only for condition matched data).

index=ABC sourcetype=ABC_1 
|eval exception=""
|eval num=0
| eval exception=if(exception="" AND con1 = "1" AND element1 = "v1" AND value != "3", "AAA",exception)   #rule1
| eval exception=if(exception="" AND con2 = "5" AND element3 = "v2" AND value != "true", "BBB",exception)  #rule2
| eval exception=if(exception="" AND con3 = "1" AND element6 = "v3" AND value != "true", "CCC",exception)   #rule3


| where exception!="" 
| ....
0 Karma

Splunk Employee
Splunk Employee

You could use the following syntax to count each (AAA, BBB, or CCC) then do any math you want using those counts.

| stats count(eval(exception="AAA")) as aaacount count(eval(exception="BBB")) as bbbcount count(eval(exception="CCC")) as ccccount 
0 Karma


pretty much the way you described it, except in splunk syntax. You first eval your rules using case or if ..if none of your conditions are met, assign eval to "" or some other placeholder end with a | where like you have done.
If you want us to help build the SPL, please share a bit more sample events and rules and expected output

0 Karma
Register for .conf21 Now! Go Vegas or Go Virtual!

How will you .conf21? You decide! Go in-person in Las Vegas, 10/18-10/21, or go online with .conf21 Virtual, 10/19-10/20.