使用Grafana进行异常检测算法调优

Lindorm Machine Learning提供了Grafana插件,支持以可视化的方式进行时序异常检测,您可以通过该插件调试出合适的异常检测算法与参数。

操作流程

整体操作流程如下。

整体操作流程

步骤一:创建Grafana工作区

您可以在阿里云应用实时监控服务ARMS中快速创建Grafana服务,更多信息请参见快速使用Grafana服务

步骤二:添加Lindorm数据源

为了让Grafana能访问Lindorm数据,因此您需要在Grafana中添加Lindorm数据源,方法如下。

  • 一键集成(推荐):Grafana服务支持一键集成Lindorm服务,更多信息请参见同步Lindorm

  • 手动添加:在Grafana中手动添加Lindorm数据源,更多信息请参见添加并使用Lindorm数据源

步骤三:启用插件

Lindorm ML插件默认已安装在Grafana中,使用前需要启用该插件。

  1. 访问Grafana工作区管理页面,单击目标工作区右侧的访问地址url进入Grafana。

    说明

    如果需要登录Grafana,可以使用GrafanaAdmin账号和创建工作区时设置的密码登录Grafana,或单击Sign in with Alibaba Cloud直接使用当前购买工作区的阿里云账号登录Grafana。

  2. Grafana左侧导航栏,单击p336428..png图标,并选择Plugins

  3. 在插件搜索栏中搜索Lindorm ML,并单击搜索到的Lindorm ML插件。

  4. 单击Enable Plugin按钮,启用该插件。

    启用后,可以在Grafana左侧导航栏看到该插件。

步骤四:调试算法与参数

  1. Grafana左侧导航栏,单击Lindorm ML插件图标,进入Lindorm ML插件主页。

  2. 单击尝试异常检测,创建一个异常检测调试面板。

  3. Edit Panel页面,设置查询SQL。

    1. Data source列表中选择目标数据源名称。

    2. 使用编辑框或TSQL语句,设置查询SQL,更多信息请参见创建大盘面板

      当前仅支持选择一条时间线,且不支持在原始查询中添加SAMPLE BY条件。

    3. 在图表上方的时间选择器中,调整查询时间范围。

      此时,如果查询SQL配置正确,Lindorm ML会在图表中绘制出原始时间线数据,同时生成异常检测SQL进行查询,并将异常检测结果绘制在图表中。

      说明

      如果图表绘制失败或不符合预期,请确认原始数据查询SQL是否只选择了一条时间线,您可以在Grafana Explore界面中进行测试。

  4. 在右侧Anomaly Detect目录中,调整时序异常检测算法与参数。

    当前Lindorm ML主要提供两类算法:统计类算法和分解类算法,更多请参见时序异常检测算法分类

    • 如果您的数据带有较强的周期性,比如每天或每周在相对固定的时刻出现峰值或者谷值,那么推荐您优先尝试分解类算法(ostl-esdistl-esd),参数调优请参见分解类算法参数调优

    • 如果您的数据通常通过阈值即可判断异常,那么推荐您优先尝试统计类算法(esd、ttestnsigma),参数调优请参见统计类算法参数调优

    说明

    关于右侧的Panel optionsStandard optionsThresholds等参数设置,请参见Grafana官方文档Configure panel options等。

  5. 调整不同的算法与参数,获取符合预期的异常检测效果,单击页面右上角的Save,保存大盘。