Splunk Search

wrong results for case statement with AND

sam1010
Explorer

I used this eval statement with AND conditions but I'm only getting result as "Public" even when the condition satisfies for value "Private" i.e. I'm only getting default result. Any idea of what's wrong with this statement?

| eval perm=case(block_public_acls=true AND block_public_policy=true AND ignore_public_acls=true AND restrict_public_buckets=true,"Private",1=1,"Public")

sam1010_1-1634196686147.png

 

0 Karma
1 Solution

marilyncugal
Engager

Check the type of the fields. 
e.g.  | eval type_of_field = typeof(block_public_acls)

If it is "String", then you can wrap the right side of the condition with quotation marks.

| eval perm=case(block_public_acls="true" AND block_public_policy="true" AND ignore_public_acls="true" AND restrict_public_buckets="true","Private",1=1,"Public")

View solution in original post

marilyncugal
Engager

Check the type of the fields. 
e.g.  | eval type_of_field = typeof(block_public_acls)

If it is "String", then you can wrap the right side of the condition with quotation marks.

| eval perm=case(block_public_acls="true" AND block_public_policy="true" AND ignore_public_acls="true" AND restrict_public_buckets="true","Private",1=1,"Public")

gcusello
SplunkTrust
SplunkTrust

Hi @sam1010,

use double quotes in all the conditions:

| eval perm=case(block_public_acls="true" AND block_public_policy="true" AND ignore_public_acls="true" AND restrict_public_buckets="true","Private",1=1,"Public")

Ciao.

Giuseppe

ITWhisperer
SplunkTrust
SplunkTrust

Have you tried putting "true" in double quotes?

Get Updates on the Splunk Community!

Splunk + ThousandEyes: Correlate frontend, app, and network data to troubleshoot ...

 Are you tired of troubleshooting delays caused by siloed frontend, application, and network data? We've got a ...

Splunk Observability for AI

Don’t miss out on an exciting Tech Talk on Splunk Observability for AI!Discover how Splunk’s agentic AI ...

🔐 Trust at Every Hop: How mTLS in Splunk Enterprise 10.0 Makes Security Simpler

From Idea to Implementation: Why Splunk Built mTLS into Splunk Enterprise 10.0  mTLS wasn’t just a checkbox ...