Splunk Search

Single Value visualisation for a timechart with sparkline and showing the group by field

MCW
Explorer

Hi expert,

My SPL looks something like:

index=<> sourcetype::<>
| <do some usual data manipulation>
| timechart min(free) AS min_free span=1d limit=bottom1  usenull=f BY hostname
| filldown

What I want to achieve is displaying the outcome as Single Value visualisation with sparkline.

My expectation is to have the very last and smallest value min_free for the time span selected displayed and showing the hostname with the smallest min_free shown in the same visual.

However, I get different outcome. The BY split appears to group data by hostname first and then applies the min_free value as secondary sort criteria.

Following is what I get:

MCW_1-1715929393497.png

 

When I modify the SPL timechart to limit=bottom2, I get the following.

MCW_2-1715929571966.png

 

What I want with a slightly modified SPL (limit=bottom1 useother=f) is to only display the circled middle one with the Single Value showing both the latest smallest min_free and hostname values.

How can I achieve this?

Thanks,

MCW

 

 

Labels (1)
0 Karma
1 Solution

ITWhisperer
SplunkTrust
SplunkTrust
``` bucket time by day ```
| bin _time span=1d 
``` find minimum for each host for each day ```
| stats min(free) AS min_free BY _time hostname
``` find lowest for minimum for each day ```
| eventstats min(min_free) as lowest by _time
``` find host which has that minimum for each day ```
| eval min_host=if(min_free=lowest,hostname,null())
``` find the latest host which has the daily minumum ```
| eventstats latest(min_host) as latest_lowest
``` just keep that host ```
| where hostname==latest_lowest
``` switch to "chart" format ```
| xyseries _time hostname min_free

View solution in original post

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust
``` bucket time by day ```
| bin _time span=1d 
``` find minimum for each host for each day ```
| stats min(free) AS min_free BY _time hostname
``` find lowest for minimum for each day ```
| eventstats min(min_free) as lowest by _time
``` find host which has that minimum for each day ```
| eval min_host=if(min_free=lowest,hostname,null())
``` find the latest host which has the daily minumum ```
| eventstats latest(min_host) as latest_lowest
``` just keep that host ```
| where hostname==latest_lowest
``` switch to "chart" format ```
| xyseries _time hostname min_free
0 Karma

MCW
Explorer

Thanks very much ITWhisper, it does work for what I need. Cheers!

0 Karma
Get Updates on the Splunk Community!

CX Day is Coming!

Customer Experience (CX) Day is on October 7th!! We're so excited to bring back another day full of wonderful ...

Strengthen Your Future: A Look Back at Splunk 10 Innovations and .conf25 Highlights!

The Big One: Splunk 10 is Here!  The moment many of you have been waiting for has arrived! We are thrilled to ...

Now Offering the AI Assistant Usage Dashboard in Cloud Monitoring Console

Today, we’re excited to announce the release of a brand new AI assistant usage dashboard in Cloud Monitoring ...