跳转至

SLO


在云时代背景下,各大服务商均发布相关服务水平协议(SLA),保障所提供服务的质量并明确权责。观测云 SLO 监控是围绕 DevOps 各类指标,测试系统服务可用性是否满足目标需要,不仅可以帮助使用者监控服务商提供的服务质量,还可以保护服务商免受 SLA 违规的影响。

概念先解

名词 描述
SLA 即 Service-Level Agreement,服务等级协议,指系统服务提供者(Provider)对客户(Customer)的服务承诺。您可以对服务商的服务质量 SLA 评分,实时监测服务的达标率。
SLI 即 Service Level Indicator,测量指标,指选择用于衡量系统稳定性的指标。观测云 SLI 支持基于监控器设定一个或多个测量指标。
SLO 即 Service Level Objective,观测云进行 SLA 评分处理的最小单元,是一个时间窗口内 SLI 累积成功数的目标。而我们又经常把 SLO 转化为错误预算,用于计算可容忍的错误数,在每一个检测周期内出现异常事件的时间将在可容错时长中扣除。(如下图:假设 SLO 检测周期为5分钟,根据叠加后,异常事件覆盖时间为3分钟,扣除额度3分钟)。

新建 SLO

观测云支持通过监控器的 SLO 模块,自定义创建新的 SLO 任务。

字段 说明
名称 SLO 任务名称。最多支持 64 个字符输入。
目标 SLO 目标百分比(0-100%),支持选定两个目标,包括目标最低目标
  • 目标:当 SLO 百分比 < 目标百分比,且 >= 最低目标百分比时,被认定为不健康 SLA;
  • 最低目标:当 SLO 百分比 < 最低目标百分比时,被认定为不达标 SLA。
  • SLI 监控器的正常运行时间将作为衡量系统稳定性的指标,您可自定义添加一个或多个监控器作为测量指标。
    异常通知对象 告警策略下的告警通知对象,支持空间成员、邮件组、企业微信机器人、钉钉机器人、飞书机器人、短信等通知方式。
    通知沉默 若同一个事件不是非常紧急,但是告警通知频率高,可以通过设置通知沉默的方式减少通知频率。
    ⚠ 通知沉默设置后事件会继续产生,但是通知不会再发送,产生的事件会存入事件管理
    检测频率 SLO 检测频率,即以一定时间范围为周期,监测 SLO 任务中监控器是否出现异常事件。目前支持 5 分钟、10 分钟两种检测频率。
    描述 描述性信息,最多支持 256 个字符。

    注意:SLO 配置一旦保存,SLO 名称、目标、检测周期将不可更改。

    SLO 列表

    在工作空间的监控器 > SLO 中,您可以查看现有 SLO 监控任务的任务达标率,目标服务水平等,还可以对任务进行编辑、查看相关事件、导出仪表板等。

    列表字段

    字段 说明
    监控器 SLI 关联的监控器数量,即测量服务性能的指标。
    达标率 在给定考核周期内满足系统无异常时间占总时长的百分比(达标率=系统无异常时间/考核周期 * 100%):
  • 当最低目标百分比 =< 百分比 < 目标百分比时,被认定为不健康 SLA,显示为黄色达标率;
  • 当百分比 < 最低目标百分比时,被认定为不达标 SLA,显示为红色达标率。
  • 故障时间 即监控器异常的时间/已用额度。
    错误预算 当前 SLO 还剩余的可容错时长(假设目标 SLO 设定为 95%,即存在 5% 的容错率,默认最近 7 天为周期,即默认:错误预算=7天 *5% = 21分钟),显示为:
  • 绿色:剩余的可容错时长 >= 0;
  • 红色:剩余的可容错时长 < 0。
  • 目标 创建 SLO 任务时设定的,服务可用性的目标百分比。

    操作说明

    操作 说明
    搜索栏 在 SLO 列表,您可基于 SLO 名称进行搜索。
    批量操作 点击名称 ,可针对特定 SLO 批量启用禁用删除
    启用/禁用 观测云支持启用/禁用已有的 SLO。新建的 SLO 默认启动,您可以禁用 SLO,或重新启动被禁用的 SLO。
    编辑 观测云支持对已有的 SLO 任务进行重新编辑,不支持 SLO 名称、目标、检测周期的修改。
    删除 观测云支持对已有的 SLO 任务进行删除
    ⚠ 一旦删除 SLO 任务,可能会导致其关联的仪表板 SLO 数据失效。
    查看相关事件 由 SLO 任务触发的告警事件将统一存储在对应 SLO 任务下,通过查看相关事件操作,可直接跳转由该 SLO 任务触发的全部未恢复事件。
    导出到仪表板 支持导出 SLO 监测任务为视图至仪表板,以便在仪表板同步进行 SLO 监控。
    ⚠ 仪表板中的 SLO 视图的时间范围默认与仪表板保持一致,而 SLO 列表默认计算最近 7 天 SLO 达标率。

    SLO 详情

    观测云支持通过点击 SLO 任务查看 SLO 详情,包括 SLO 达标率和 SLI 异常记录。

    字段 说明
    过去 7 天 SLA 根据当前访问的时间获取近 7 天的达标率。
    全年 SLA 根据当前访问的时间获取今年(自然年)的达标率。
    近一年 SLA 根据当前访问的时间获取最近 1 年(自然年)的达标率。
    SLI 异常记录 基于当前 SLO 任务下的监控器所触发的异常事件。
    通过 DQL 表达式获取 SLO

    异常时间参考如下查询:

    slo_cost 表示扣除分钟数,将值相加即为异常时间slo_id 对应替换即可:

    M::`slo`:(sum(`slo_cost`)) { `slo_id` = 'monitor_c36bb56f274b4242866fe7259f1859c0' }
    

    若查询 7 天的 SLO 值,DQL 表达式如下:

    eval((10080-A)/10080 *100, A="M::`slo`:(sum(`slo_cost`)) { `slo_id` = 'monitor_c36bb56f274b4242866fe7259f1859c0'}")
    

    示例:

    下图中 SLO 任务过去 7 天的异常时间 SLO 值为 80.496%

    前往快捷入口 > 查询工具,选择 DQL 查询,输入 7 天 SLO 值的查询语句,查询结果与上图的值一致。

    ⚠ 在应用查询工具 > DQL 查询时,需保证右上角时间范围与获取 SLO 值的时间范围一致;slo_id 可前往事件 > 事件详情页内查看:

    文档评价

    文档内容是否对您有帮助? ×