Implement ASAP() smoother
Author: msiebuhrCreated Jan 14, 2019Updated Sep 15, 2026
Labelskind/enhancementpriority/Pmaybecomponent/api
From using Datadog, I've come to find their autosmooth()-function very handy when dealing with "spiky" data series.
Their implementation (blog post) is inspired by the ASAP smoother (Automatic Smoothing for Attention Prioritization; homepage, PDF paper).
While it is not perfect for every use-case, I have found it to work extremely well compared to hand-tuning some "average over X minutes" until a pattern actually emerges, yet it doesn't hide actual spikes.
Example from the ASAP homepage:
Source: prometheus/prometheus