Splunk Search

How to transform a field into a time format?

skoelpin
SplunkTrust
SplunkTrust

I extracted deployment time from events and it's currently in this format 0:04.645 and 1:30.123 and is in terms of Minutes, Seconds, Milliseconds. I need to sum this time up every day and graph it.

How can I put this in a time format in seconds?

Example:

0:04.645
1:30.123

sum = 94.768 seconds

Tags (2)
0 Karma
1 Solution

bmacias84
Champion

Use the strptime command.

... |eval atime=strptime(fieldname, "%M:%S.%3N")

View solution in original post

0 Karma

woodcock
Esteemed Legend

You need the tostring like this:

...  | rex field=field1 "(?<H>.*?))?:?((?<M>.*?))?:?(?<S>.*?)" | fillnull value=0 | eval onlySeconds1 =  S + 60*(M + 60*H) | rex field=field2 "(?<H>.*?))?:?((?<M>.*?))?:?(?<S>.*?)" | fillnull value=0 | eval onlySeconds2 =  S + 60*(M + 60*H) | eval =sumSeconds = onlySeconds1 + onlySeconds2 | eval sumTime = tostring(sumSeconds, "duration")
0 Karma

bmacias84
Champion

Use the strptime command.

... |eval atime=strptime(fieldname, "%M:%S.%3N")
0 Karma

woodcock
Esteemed Legend

Does this really work? First of all, it is not syntactically correct (missing eval). Secondly it generates a time_t, not a duration.

0 Karma
Get Updates on the Splunk Community!

Webinar Recap | Revolutionizing IT Operations: The Transformative Power of AI and ML ...

The Transformative Power of AI and ML in Enhancing Observability   In the realm of IT operations, the ...

.conf24 | Registration Open!

Hello, hello! I come bearing good news: Registration for .conf24 is now open!   conf is Splunk’s rad annual ...

ICYMI - Check out the latest releases of Splunk Edge Processor

Splunk is pleased to announce the latest enhancements to Splunk Edge Processor.  HEC Receiver authorization ...