Splunk Search

## How to achieve overlay graf with daily total, average per day for a week and standard deviation?

Communicator

I'm trying to use tstats to calculate the daily total number of events for an index per day for one week. Then calculate an averade per day for the entire week, as well as upper and lower bounds +/- 1 standard deviation.

Feels like I can get each individual thing to work, either the bar chart with the daily count, OR the statistics. Though I want them all in a single figure.

This is my base search:

``````| tstats count as daily_events where index="index" earliest=-7d latest=-1d by _time span=1d
# | timechart span=1d sum(daily_events) as daily_events``````

Which seems to work just fine by itself, with or without a following "timechart"

Now I figure I'd do something like this:

``````| stats sum(daily_events) as total_events stdev(daily_events) as std_dev
| eval avg_events=round(total_events/7, 0)
| eval upper = total_events + std_dev
| eval lower = total_events - std_dev``````

Which by itself seems to work, though I now loose the results from the base search.

So how can I combine these things (can I combine?) into something close to what I want to achieve? I'm attaching a crude scetch for clarity.

It feels like I somehow need to add three columns just replicating the upper, lower and av_events values for every "daily_events" entry, or something. I just can figure it out. Any feedback is mych appreciated.

Labels (4)

• ### tstats

Tags (3)
1 Solution
SplunkTrust

You must be looking for eventstats (in lieu of stats)

``````| tstats count as daily_events where index="index" earliest=-7d latest=-1d by _time span=1d
| eventstats sum(daily_events) as total_events stdev(daily_events) as std_dev
| eval avg_events=round(total_events/7, 0)
| eval upper = total_events + std_dev
| eval lower = total_events - std_dev``````

Tags (1)
SplunkTrust

You must be looking for eventstats (in lieu of stats)

``````| tstats count as daily_events where index="index" earliest=-7d latest=-1d by _time span=1d
| eventstats sum(daily_events) as total_events stdev(daily_events) as std_dev
| eval avg_events=round(total_events/7, 0)
| eval upper = total_events + std_dev
| eval lower = total_events - std_dev``````

Tags (1)
Communicator

I was just about to post myself but glad you beat me to the punch, totally forgot about aventstats!

Thank you

Get Updates on the Splunk Community!

#### Mission Control | Explore the latest release of Splunk Mission Control (2.3)

We’re happy to announce the release of Mission Control 2.3 which includes several new and exciting features ...

#### Cloud Platform | Migrating your Splunk Cloud deployment to Python 3.7

Python 2.7, the last release of Python 2, reached End of Life back on January 1, 2020. As part of our larger ...

#### Splunk Observability Cloud | Enhancing Your Onboarding Experience with the ...

We understand that your initial experience with getting data into Splunk Observability Cloud is crucial as it ...