mozilla / opmon

Operational Monitoring (OpMon) đŸ“ˆ
Mozilla Public License 2.0
7 stars 5 forks source link

Add windowed median absolute deviation (MAD) alert #149

Open ncalexan opened 1 year ago

ncalexan commented 1 year ago

I have two types of data that I want to monitor. Some of my data are simple rates. For most rates, it is possible to determine thresholds by hand, but I want to witness outliers without having to determine the band thresholds myself.

As a precursor to more powerful (and more expensive!) modeling (#90), let's implement the easiest anomaly detection algorithms. Two of the most basic are z-scores and median absolute deviation, and here I assume everything will be windowed. These would at least allow me to witness rates dropping.

┆Issue is synchronized with this Jira Task

ncalexan commented 1 year ago

Something like:

[alerts]
[alert.default_rate_mad]
type = "median_absolute_deviation"
window_size = 28
threshold = 3

This would follow, e.g., https://stats.stackexchange.com/q/494087 and use a threshold of 3 deviations to raise the alert.