Splunk Search

Find difference between time now and last event time

JoshuaJohn
Contributor

I am not sure why I am not getting results with this query, any suggestions?

index= ______
| stats max(_time) as last_event
| eval timenow=strftime(now(), "%Y-%m-%d %H:%M:%S.%3N")
| eval last_event=strftime('last_event', "%Y-%m-%d %H:%M:%S.%3N")
| eval diff = tostring((timenow - last_event), "duration")
| table diff

1 Solution

somesoni2
Revered Legend

First problem with this query was that you're trying to arithmetic operation of string fields (strftime give string formatted date). You need timestamps in epoch format and format it later if needed. Second thing, not problem but big scope of optimization is to use tstats command instead of regular search. So give this a try

| tstats max(_time) as last_event WHERE index=.......
| eval diff=tostring(now()-last_event,"duration") | table diff

View solution in original post

somesoni2
Revered Legend

First problem with this query was that you're trying to arithmetic operation of string fields (strftime give string formatted date). You need timestamps in epoch format and format it later if needed. Second thing, not problem but big scope of optimization is to use tstats command instead of regular search. So give this a try

| tstats max(_time) as last_event WHERE index=.......
| eval diff=tostring(now()-last_event,"duration") | table diff
Get Updates on the Splunk Community!

Splunk Observability for AI

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

[Puzzles] Solve, Learn, Repeat: Dereferencing XML to Fixed-length events

This challenge was first posted on Slack #puzzles channelFor a previous puzzle, I needed a set of fixed-length ...

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

What are Community Office Hours? Community Office Hours is an interactive 60-minute Zoom series where ...