Splunk Search

How to change the conditional by event name?

mauricio2354
Explorer

I have this splunk query that returns two fields, "audit_event_name" (the name of the event) and "failureRate" (the rate of failure).

index=jedi sourcetype=jedi_epf_audit  
          | stats count(eval(actvy_dispos_cd=4)) as Failure, count(eval(actvy_dispos_cd=1)) as Success, count(eval(actvy_dispos_cd=3)) as PolicyDenied by audit_event_name 
          | eval successRate = Success/(Success + Failure)
          | eval successRate = round(successRate, 4) 
          | eval failureRate = (1 - successRate) * 100) 
          | where failureRate >  0.5
          | fields audit_event_name, failureRate

However, there is this one audit_event_name "SUBMIT_LOGIN_CREDENTIALS_PCOS" that should have a failureRate > 0.6 instead. How would I implement that? I've tried using subsearches but it didn't work quite well for me. Thanks for any and all help!

0 Karma
1 Solution

somesoni2
Revered Legend

Try like this

index=jedi sourcetype=jedi_epf_audit  
           | stats count(eval(actvy_dispos_cd=4)) as Failure, count(eval(actvy_dispos_cd=1)) as Success, count(eval(actvy_dispos_cd=3)) as PolicyDenied by audit_event_name 
           | eval successRate = Success/(Success + Failure)
           | eval successRate = round(successRate, 4) 
           | eval failureRate = (1 - successRate) * 100) 
           | where (audit_event_name="SUBMIT_LOGIN_CREDENTIALS_PCOS" AND failureRate >  0.6) OR (audit_event_name!="SUBMIT_LOGIN_CREDENTIALS_PCOS" AND failureRate >  0.5)
           | fields audit_event_name, failureRate

View solution in original post

somesoni2
Revered Legend

Try like this

index=jedi sourcetype=jedi_epf_audit  
           | stats count(eval(actvy_dispos_cd=4)) as Failure, count(eval(actvy_dispos_cd=1)) as Success, count(eval(actvy_dispos_cd=3)) as PolicyDenied by audit_event_name 
           | eval successRate = Success/(Success + Failure)
           | eval successRate = round(successRate, 4) 
           | eval failureRate = (1 - successRate) * 100) 
           | where (audit_event_name="SUBMIT_LOGIN_CREDENTIALS_PCOS" AND failureRate >  0.6) OR (audit_event_name!="SUBMIT_LOGIN_CREDENTIALS_PCOS" AND failureRate >  0.5)
           | fields audit_event_name, failureRate

mauricio2354
Explorer

This worked perfectly, thank you!

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

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

Splunk Community Badges!

  Hey everyone! Ready to earn some serious bragging rights in the community? Along with our existing badges ...

[Puzzles] Solve, Learn, Repeat: Matching cron expressions

This puzzle (first published here) is based on matching timestamps to cron expressions.All the timestamps ...