云服务器内容精选

  • 调优策略 最常见告警 长时间低(高)于阈值线告警,如图1所示。 图1 常见告警 告警进入条件:一般8分钟内有7个点异常告警进入。 告警退出条件:20分钟内有18个点正常则告警退出。 调优方法: 调节sensitivity敏感度参数,可以使小幅度下降的异常不告警,针对阈值线过紧的情况,图1的异常通过敏感度调节不了,因为阈值线相对是合理的 配置count_threshold参数,如果不关注请求量很少的异常,可以配置该参数,建议非必要情况下不要配置该参数,可能会出现遗漏告警的情况。 毛刺告警 两三个显著的毛刺点异常,如图2所示。 图2 毛刺告警 告警进入条件:穿过阈值线的毛刺异常程度,最快在第2个毛刺点告警。 告警退出条件:20分钟内有18个点正常则告警退出。 调优方法: 如果对请求量很少的接口,毛刺异常不关注,可以配置low_count_threshold参数,如图2中告警的曲线请求量不超过30,可以配置改参数为30。 如果不管请求量多少,都不需要毛刺类告警,则可以配置alert_by_spikes参数。毛刺类告警最快可以将告警时间缩短为2分钟,如果屏蔽掉这类告警,则按照其他的告警类型会有一定的延迟(一般7分钟)。 突变告警 突变告警只针对请求量类指标,特点是请求量曲线发生突变(突增或者突降)同时指标曲线没有触及阈值线,如图3所示。 图3 突变告警 告警进入条件:局部看曲线发生突变(默认突变20%),或者长期看相比历史降低或升高。 告警退出条件:数据平稳后告警退出,一般会持续18分钟。 调优方法: 通过配置alert_by_chain参数可以控制是否加入突变检测。突变告警可以防止阈值线学习宽松条件下指标突变的漏告警,但对于不关注阈值线之上数据突变的指标会产生一些不必要的告警。 波动性告警 波动性告警只针对非请求量类指标,这类告警的特点是指标曲线没有触及阈值线,如图4所示。 图4 波动性告警 告警进入条件:局部看曲线波动变大,或者长期看相比历史数据持续降低或升高。 告警退出条件:数据恢复到历史同期水平,持续18分钟则告警退出。 调优方法: 对于小幅度的波动和下降(上升)告警可以通过调节sensitivity敏感度来减少部分告警。 如果不关注这类异常,可以通过配置alert_by_std参数来实现。波动性告警可以防止阈值线学习宽松条件下指标小幅波动的漏告警,但对于不关注阈值线之上数据波动的指标会产生一些不必要的告警。 长时间掉0告警 长时间掉0告警只针对请求量类指标,特点是阈值线为0,测量值长时间掉0,如图5所示。 图5 长时间掉0告警 告警进入条件:历史同时期没有掉0,或者掉0时间持续28分钟。 告警退出条件:数据恢复到正常水平则告警退出。 调优方法: 如果这类告警频繁出现,可以通过配置alert_by_drop_to_0参数屏蔽。长时间掉0告警可以防止阈值线为零的情况下指标长时间掉零的漏告警。
  • 配置方法 在“异常检测”页面,单击异常检测任务所在行“操作”列的“模型”,默认显示“算法配置”页签,参考表1配置参数。 表1 算法配置参数说明 参数名称 参数含义 取值范围 参数说明 配置建议 metric_type 指标类型 success_rate(成功率) fail_rate(失败率) count(请求量,做上下限告警) speed(速率) delay(时延) count_lowerlimit(请求量,做下限告警) count_upperlimit(请求量,做上限告警) 按照实际的指标类型选择该参数,对于请求量类指标,做下限告警的选择count_lowerlimit,不要选择count。 - sensitivity 敏感度 0-10 默认值5 敏感度参数越高,阈值线越紧;敏感度参数越低,阈值线越松。 敏感度参数最高不超过5.5,最低不低于3.5;一般配置4.5或者5。 请求量指标因为使用了新的算法,敏感度可以在0.5—5之间调节。 时延、请求量、速率类指标敏感度每降低0.5,阈值线相对浮动3%,绝对浮动3。 成功率、失败率指标敏感度每降低0.5,阈值线相对浮动0.3%,绝对浮动0.3%。 low_count_threshold 小请求量 0- 100000000 默认值0 请求量低于此参数值时毛刺告警、波动性不生效;其他类型的告警依然生效。 如果毛刺告警较多,可以配置该参数。 count_threshold 请求量保护 0-100000000 默认值0 请求量低于此参数值时,完全不告警。 一般情况下不建议配置,请谨慎配置,且对请求量类指标不生效。 no_model_threshold_upper 无模型阈值上限 0-100000000 默认值100000000 无模型时配置的阈值上限(固定阈值线)。 对于新增的接口,因为没有历史数据,无法训练出该接口的模型,此时可以配置合适的值用来监控此类接口。 no_model_threshold_lower 无模型阈值下限 0-100000000 默认值0 无模型时配置的阈值下限(固定阈值线)。 对于新增的接口,因为没有历史数据,无法训练出该接口的模型,此时可以配置合适的值用来监控此类接口。 alert_by_std 波动性告警 True/False 默认为True 非请求量类指标参数,通过该参数设置是否引入波动性告警。 - alert_by_chain 突变告警 True/False 默认为True 请求量类指标参数,通过该参数设置是否引入突变告警。 - alert_by_drop_to_0 长时间掉0告警 True/False 默认为True 请求量类指标参数,通过该参数设置是否引入长时间掉0告警。 - alert_by_spikes 毛刺告警 True/False 默认为True 所有指标参数,通过该参数设置是否引入毛刺告警。 -
  • 异常检测任务配置说明 任务配置主要分为6个部分,每个部分的含义及配置说明如表3所示。 表3 异常检测任务配置说明 操作 操作说明 数据 定义异常检测数据从何而来,建议直接使用指标仓库Warehouse类型。 视图是异常检测使用的视图,一般是一键创建步骤的时候自动创建而来。指标是用哪个指标的数据来进行检测。 基础 主要配置项为指标列和维度列的指定。 时间列:指标列和计数列指定了对于异常检测而言,哪些列的数据是时间,指标和请求量。 维度:指定了对哪些维度进行检测。如果新增维度,单击“+”号;单击“获取动态值”,输入维度,从数据库中动态查询参数值;如需手动修改,单击“打开编辑器”进行修改,如果需动态更新维度,可以打开自动更新按钮,选择自动更新周期。 模型 算法配置:模型主要涉及算法及任务相关信息。其中算法配置页签主要涉及算法及其模型。 检测任务配置:训练配置和Judge配置主要是训练和Judge定时任务相关的配置及任务执行的结果。这些配置的都是自动完成,使用者重点关注任务每次执行是否成功。 抑制 抑制主要是利用根因诊断的能力,对数据进行下钻分析,确认根因的维度。如果根因的维度与配置的维度一致,则抑制该告警。所以前提是先配置完成根因诊断能力。 告警 基础配置,指定告警配置,主要配置如下: 推送状态: Start或者Stop,设置Stop将不会推送告警。 告警级别:告警的级别与告警系统对应。 阈值类型:是要对上限还是下限进行检测。 告警降级配置:选择是否开启告警降级。 告警路由:配置告警路由规则。 大盘 监控服务支持报表开发功能,其中告警总览页面类型的报表可以通过大盘设置过滤。