grafana/promql-anomaly-detection
A framework for anomaly detection using Prometheus and PromQL
解决的问题
该框架提供了一种直接在 Prometheus 中检测时间序列数据异常的方法,无需外部机器学习系统或复杂的数据管道。它通过自动计算预期范围,帮助识别请求速率、延迟、错误率和资源使用等指标中的异常行为。
工作原理
该框架使用 Prometheus 记录规则来计算“异常带”——即基于历史数据的上下界。它支持两种主要策略:一种是用于快速检测短期变化的 adaptive 方法(使用均值和标准差),另一种是用于处理尖峰或非正态分布数据的 robust 方法(使用中位数和中位数绝对偏差)。用户通过特定标签(anomaly_name、anomaly_strategy 和 anomaly_type)标记指标以触发检测逻辑,当实际指标值超出这些计算出的范围时,系统会生成告警。
适用人群
适用于已经使用 Prometheus 和 Grafana 进行监控,并希望在不引入外部依赖或专门的 AI/ML 基础设施的情况下实现自动化异常检测的 DevOps 工程师、SRE 和系统管理员。
主要亮点
- 完全在 Prometheus 内部运行,使用标准 PromQL,无需外部服务。
- 支持针对延迟或错误率等不同指标类型定制的多种检测算法。
- 包含用于可视化异常带的预构建 Grafana 仪表板模板。
- 高度可扩展,允许用户根据特定的基础设施需求定义自定义记录和告警规则。
相关
- 项目
- 项目
- 项目
- 项目
- Dispatch