Splunk Search

Can I do a calculation inside an IF statement's True condition?

khinnway
Engager

I need to find the power consumption of each day using the cumulative power meter reading;
Today's reading - Yesterday's reading = Yesterday's consumption (Diff)

However, the meter reading resets after it reaches 999, 999. Thus, if the meter reading resets, the consumption will appear as a large negative value. To get the correct value, I will have to add 1,000,000 (as 0 is a count as well).

I am very used to C programming and new to Splunk so please forgive me. This is the line I came up with:
eval Diff=if (Diff<0, Diff=Diff+10000000, Diff)

The value of Diff disappears completely for the day that reset occurs. I do realize that calculations are not exactly allowed inside an IF statement, but may I know how to go around it?

Thank you in advance!

0 Karma
1 Solution

renjith_nair
Legend

@khinnway ,

Yes it's possible to do calculation in condition. Please find below a dummy search . The result should be 0

|makeresults|eval Diff=-100|eval Diff=if(Diff<0,Diff+100,Diff)

If still does not work, please share your SPL (mask any confidential data)

---
What goes around comes around. If it helps, hit it with Karma 🙂

View solution in original post

renjith_nair
Legend

@khinnway ,

Yes it's possible to do calculation in condition. Please find below a dummy search . The result should be 0

|makeresults|eval Diff=-100|eval Diff=if(Diff<0,Diff+100,Diff)

If still does not work, please share your SPL (mask any confidential data)

---
What goes around comes around. If it helps, hit it with Karma 🙂

khinnway
Engager

Thank you so much for the help! I really appreciate the fast comment!

Get Updates on the Splunk Community!

Stay Connected: Your Guide to May Tech Talks, Office Hours, and Webinars!

Take a look below to explore our upcoming Community Office Hours, Tech Talks, and Webinars this month. This ...

They're back! Join the SplunkTrust and MVP at .conf24

With our highly anticipated annual conference, .conf, comes the fez-wearers you can trust! The SplunkTrust, as ...

Enterprise Security Content Update (ESCU) | New Releases

Last month, the Splunk Threat Research Team had two releases of new security content via the Enterprise ...