异常检测
异常检测 是识别组内一个或多个序列行为与其他不同的过程。
scenes-ml
提供了一个 SceneOutlierDetector
组件,该组件将执行异常检测并突出显示任何表现不佳的序列。它还将添加一个表示“聚类范围”的灰色带(可视为非异常数据的范围),(可选)在检测到异常的时间范围内添加注释。
用法
以下代码示例演示了如何将异常检测添加到时间序列面板中。
import { SceneOutlierDetector } from '@grafana/scenes-ml';
// Default values are shown here, all are optional.
const outlierDetector = new SceneOutlierDetector({
sensitivity: 0.5,
addAnnotations: false,
pinned: false,
onOutlierDetected: (outlier: Outlier) => {},
});
const panel = PanelBuilders.timeseries().setHeaderActions([outlierDetector]).build();
注意
请确保您只将异常检测添加到 时间序列 面板,因为它很少适用于其他面板类型。
固定结果
默认情况下,基线会在每次状态更改时重新计算,即时间范围、查询或间隔更改时。这并不总是理想的情况:例如,用户可能希望缩小视图并在未来的时间范围内查看当前的预测。
启用固定设置将冻结当前结果,因此它们在时间范围或其他设置更改时不会重新计算。
技术细节
scenes-ml
目前使用DBSCAN算法的变体来检测异常值。未来可能会添加其他算法。