Splunk Search

Comparing the results in different time range?

smanojkumar
Communicator

Hi Splunkers!

   Good day!

   I need a search which extracts the count of serial_number of different time range and i should calculate the difference, if its greater than 5000, it should trigger an alert,

 

index="inventory" origin="Inventory:ITSM" earliest=-6h latest=now()
| fields serial_number
| stats count(serial_number) as total_assets
| search [ search index="inventory" origin="Inventory:ITSM" earliest=-12h latest=-6h
| fields serial_number
| stats count(serial_number) as total_assets_prev]
| eval diff=total_assets_prev-total_assets
| where diff>5000
| eval message="Hello Team, the assets in ITSM origin is less than 65000 and its actual value is "
| table message, total_assets_prev, total_assets

 

This query is not working.

 

Thanks in advance!

Manoj Kumar S

 

Labels (1)
0 Karma

isoutamo
SplunkTrust
SplunkTrust

Hi

You could use relative_time function to divide your events like this

index="inventory" origin="Inventory:ITSM" earliest=-12h latest=now()
| eval period = if (_time < relative_time(now(),"-6h"), "previous", "current")
| stats count(search_id) as total_si by period
| eval {period}=total_si
| fields current previous
| stats sum(*) as *
| eval diff = previous - current
| where diff > 5000
| eval message="Hello Team, the assets in ITSM origin is less than 65000 and its actual value is "
| table message, previous current

There are also other ways to do it.

r. Ismo 

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust
index="inventory" origin="Inventory:ITSM" earliest=-12h latest=now()
| fields serial_number
| stats count(eval(_time<relative_time(now(),"-6h"))) as total_assets_prev count(eval(_time>relative_time(now(),"-6h"))) as total_assets
| eval diff=total_assets_prev-total_assets
| where diff>5000
| eval message="Hello Team, the assets in ITSM origin is less than 65000 and its actual value is "
| table message, total_assets_prev, total_assets
0 Karma

smanojkumar
Communicator

Hi @ITWhisperer ,

   Thanks for your response!

    I'm getting total_assets_prev as 0,

    (My requirement is calculate the count of serial_number of time range -12 hr to -6hr and count of serial_number for the time range -6hr to now and calculate the difference)

Thanks in advance!

Manoj Kumar S

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

 

Remove this line

| fields serial_number

 

0 Karma
Get Updates on the Splunk Community!

Join Us for Splunk University and Get Your Bootcamp Game On!

If you know, you know! Splunk University is the vibe this summer so register today for bootcamps galore ...

.conf24 | Learning Tracks for Security, Observability, Platform, and Developers!

.conf24 is taking place at The Venetian in Las Vegas from June 11 - 14. Continue reading to learn about the ...

Announcing Scheduled Export GA for Dashboard Studio

We're excited to announce the general availability of Scheduled Export for Dashboard Studio. Starting in ...