Splunk Search

How to fix column name and evaluate times?

HelloItsMe76
Explorer

I have a dbquery ouput that looks like the below, unfortunately i cant update the actual database query to make it more readable... 

 

2022-12-16 21:30:17.689, TO_CHAR(schema.function(MAX(columnA)),'MM-DD-YYHH24:MI')="12-16-22 16:29"

 

I am trying to whether time the 2 times  at the begining and end of the results are within 15 mins of each other. I have tried renaming the column from the long stupid string but i cant get that working using the rename function.  does anyone have any ideas how to rename (or if i even need to) and then evaluate whether the times are within 15 mins of each other?

the query i ran to get the above is just <index="abc">

 

Labels (1)
Tags (1)
0 Karma
1 Solution

richgalloway
SplunkTrust
SplunkTrust

Use rex to extract the two timestamps then use strptime to convert them into epoch (integer) form.  Then you can compare then to see how far apart they are.

| makeresults | eval _raw="2022-12-16 21:30:17.689, TO_CHAR(schema.function(MAX(columnA)),'MM-DD-YYHH24:MI')=\"12-16-22 16:29\""
```Above creates demo data.  Delete IRL```
| rex "(?<time1>^\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d.\d\d\d)"
| rex "(?<time2>\d\d-\d\d-\d\d \d\d:\d\d\\\")"
| eval diffsecs = strptime(time1, "%Y-%m-%d %H:%M:%S.%3N") - strptime(time2, "%m-%d-%y %H:%M")
| eval old=if(abs(diffsecs) > (15*60),1 ,0)
---
If this reply helps you, Karma would be appreciated.

View solution in original post

0 Karma

richgalloway
SplunkTrust
SplunkTrust

Use rex to extract the two timestamps then use strptime to convert them into epoch (integer) form.  Then you can compare then to see how far apart they are.

| makeresults | eval _raw="2022-12-16 21:30:17.689, TO_CHAR(schema.function(MAX(columnA)),'MM-DD-YYHH24:MI')=\"12-16-22 16:29\""
```Above creates demo data.  Delete IRL```
| rex "(?<time1>^\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d.\d\d\d)"
| rex "(?<time2>\d\d-\d\d-\d\d \d\d:\d\d\\\")"
| eval diffsecs = strptime(time1, "%Y-%m-%d %H:%M:%S.%3N") - strptime(time2, "%m-%d-%y %H:%M")
| eval old=if(abs(diffsecs) > (15*60),1 ,0)
---
If this reply helps you, Karma would be appreciated.
0 Karma

HelloItsMe76
Explorer

this is beautiful. thanks so much. it works perfectly.

Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Agent Mode Engaged! Enchaining Agentic Operations with Splunk AI Assistant 2.0

    Are you ready to transform how your team handles complex data requests? We invite you to our upcoming ...

Announcing Modern Navigation: A New Era of Splunk User Experience

We are excited to introduce the Modern Navigation feature in the Splunk Platform, available to both cloud and ...

Modernize your Splunk Apps – Introducing Python 3.13 in Splunk

We are excited to announce that the upcoming releases of Splunk Enterprise 10.2.x and Splunk Cloud Platform ...