Splunk Search

How to extract time interval between each near two events?

JSIrony
Loves-to-Learn Lots

hi, I'm finding how to calculate each time difference from near 2 events

 

for example,

if my search output is

f1    datetime

A     ~~ 09:00

A    ~~ 10:00

A    ~~ 15:00

B    ~~ 06:00

B    ~~ 08:30

 

I want a table like

A 1:00

A 5:00

B 2:30

 

I prefer to print it without making big temporary output table(for look-up or etc) if I can

can I get some ideas?

Labels (1)
0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

Assuming you have the times (_time) in epoch format

| streamstats range(_time) as timediff window=2 global=f by f1
| where timediff>0
| eval timediff=tostring(timediff,"duration")
0 Karma

yuanliu
SplunkTrust
SplunkTrust

Are you looking for delta?

| delta _time as timedelta
0 Karma

JSIrony
Loves-to-Learn Lots

thanks 🙂

 

I considered about delta, but it can't be grouped by another field (like f1 in question i wrote)

 

now I'm trying using streamstats-range-window=2 with time sorted table like this

| streamstats window=2 range(_time) by f1

 

are there other better solutions? 

0 Karma

yuanliu
SplunkTrust
SplunkTrust

If groupby is a requirement (not quite clear in OP), streamstats is the answer.

0 Karma
Get Updates on the Splunk Community!

Data Management Digest – December 2025

Welcome to the December edition of Data Management Digest! As we continue our journey of data innovation, the ...

Index This | What is broken 80% of the time by February?

December 2025 Edition   Hayyy Splunk Education Enthusiasts and the Eternally Curious!    We’re back with this ...

Unlock Faster Time-to-Value on Edge and Ingest Processor with New SPL2 Pipeline ...

Hello Splunk Community,   We're thrilled to share an exciting update that will help you manage your data more ...