Hello all,
I have a seemingly simple goal: bucketing events by time and finding the 95th percentile using the total number of events in each bin. I'm able to get the counts for each bin but I'm not sure how to use each of those counts and find the percentile using p()
.
This is how I'm getting the count for each bin:
| bin _time span=5m | stats count by _time
Now I want to use the values in the count column as an input list to calculate p95()
.
Thanks for the help in advance.
@jonnymolina,
Does it work for you ?
index=_internal |bucket span=5m _time|stats count by _time|eventstats perc95(count) as p95
@jonnymolina,
Does it work for you ?
index=_internal |bucket span=5m _time|stats count by _time|eventstats perc95(count) as p95
I also figured out you can return a single p95 value by doing
| bin _time span=5m | stats count by _time | stats perc95(count) as p95
you could do that as well if you only need p95 , all other fields will be gone. Evenstats is used to keep all the fields in the output
This works! Thank you so much. As a side topic, could this be achieved through streamstats
as well?
I wouldn't do it with streamstats because its specially created for creating "streaming" events where as eventstats acts on the events by events