更新时间:2025-01-06 17:54:32

您可以根据实际业务场景中的需求,确定配置SLO类型的目标模型或者KPI类型的目标模型,两者有较大差距,以下介绍SLO类型的目标模型创建

› 创建SLO目标模型

提示:您可以参照下方配置流程手动创建所需要的目标模型,也可以导入含有目标模型配置参数的合规文件批量创建目标模型

进入数据管理 > 数据模型 > 目标模型配置页面,点击【+新建】,进入“新建指标模型”的配置流程,如下所示:

1. 配置基本信息

配置参数说明如下:

配置参数 参数说明 限制条件
*名称 填写目标模型的名称

• 目标模型名称不能重复,且不能为空;

• ≤40个字符

id

选填项。填写目标模型的唯一id,若不填则有系统自动分配

唯一,不可更改
*类型 必填项。指的是目标类型,目前暂且只有SLO和KPI

SLO或者KPI

标签 根据实际需求设置指标模型的标签信息,用于业务标识。可通过回车键添加多个标签。 • 最多支持创建5个标签
备注 根据实际需求填写目标模型的其他属性信息 • ≤255个字符

2. 配置模型信息

完成"基本配置"后,点击配置步骤条右侧的【下一步】,进入“模型配置”步骤页面,如下所示:

配置参数说明如下:

配置参数 参数说明 限制条件
*目标
  1. 可以是常量 99(%) -- 只存值,不存单位
  2. 也可以是从字典中读取,读取字典时,需要指定关联key(指标序列中label和字典中的key)和指标列。适配例如闵行中每个app的uv目标不同的场景。字典先不支持,因为需要从指标序列中获取维度字段,需有维度管理之后才可行。

•数值

周期

  必须为数值

必填,单位 天
*良好指标
  1. 可多个:
    1. 选择依赖指标模型及用于参与计算的指标(value或者达成率等)
    2. 配置权重。
      1. 权重可以是常量
      2. 也可以是读取字典来,读取字典时,需要指定关联key(指标序列中label和字典中的key)和指标列。适配例如闵行中各个app中的资源使用率目标和权重不同的场景。字典先不支持,因为需要从指标序列中获取维度字段,需有维度管理之后才可行。

 

*总指标

附加计算的指标模型可选

 

状态阈值

状态阈值配置可选。若配置了状态,则status不能为空,范围区间不允许有交叉

• ≤255个字符
数据预览 可以用于实时预览数据,校验配置的是否正常  

 

 

3. 配置数据持久化任务

指标模型的数据持久化是指将指标模型查询到的指标数据存储到指定索引库中,确保数据的长期存储、保持数据历史状态,以实现基于所需指标数据在复杂场景中的计算,加速指标数据查询。

完成"模型配置"后,点击配置步骤条右侧的【下一步】进入“持久化配置”页面,如下所示:

 

注意:指标模型查询语言为PromQL、DSL时,支持配置的持久化任务参数不同,具体请参见下方说明。

配置参数说明如下:

•  备注:根据实际需求,填写持久化任务的其他属性信息。

说明:备注信息需要≤255个字符。

*持久化步长:设置指标数据持久化时生成指标数据点的时间间隔。点击配置框,在下拉框中展示的系统固定持久化步长集中选择所需步长,当前支持配置:5分钟、10分钟、15分钟、20分钟、30分钟、1小时、2小时、3小时、6小时、12小时、1天。

说明:

1. 持久化步长为必填项,不能为空;

2. 当前持久化步长不支持配置为自定义参数;

3. 同一个持久化任务支持配置多个持久化步长,但不能重复添加;

4. 指标模型配置完成后,持久化步长参数将会作为维度字段(labels.step)写入到持久化的指标数据中,在使用当前持久化的数据继续创建指标模型时,需添加“step={{*持久化步长}}”的过滤条件。

追溯时长:追溯时长是指从当前时间向过去回退的时间长度,用于确定持久化数据的起始时间点。点击文本配置框,填写或点击“”按钮设置追溯时长,并选择其时间单位,可选单位:小时、天。例如,当追溯时长配置为“2天”,系统会从当前时间回退2天的时间点开始,并按照持久化任务配置信息,逐个步长计算历史数据点,进行数据持久化。即系统会根据持久化任务的配置信息补充前面2天的持久化数据点。

说明:追溯时长需要配置为正整数,追溯的数据点需要<=10000,追溯的数据点=追溯时长/持久化步长;完成指标模型的配置后,不支持修改此配置项。

*执行频率:设置系统执行持久化任务的时间间隔,即持久化任务的运行频率。当前支持固定频率、Cron表达式两种配置方式,具体如下:

1)固定频率:点击文本配置框,填写或点击“”按钮配置具体时间间隔,并选择时间单位,可选单位:分钟、小时、天。例如:当固定频率设置为“每5分钟”,则此持久化任务每5分钟执行一次;

2)Cron表达式:Cron表达式是一个具有时间含义的字符串,用于计划任务。使用Cron表达式可以精准配置持久化任务的执行时间,包括持久化任务执行的具体时间点、任务执行间隔、任务执行频率。

-手动输入Cron表达式:点击文本配置框,您可以参考通用Cron语法,手动输入Cron表达式字符串,定义任务执行频率。Cron表达式以5个空格隔开,分为6个域,每个域可以是确定取值,也可以是具有逻辑意义的特殊字符。关于域取值及特殊字符的说明如下:

域取值(下表为Cron表达式中7个域允许的取值以及支持的特殊字符)

是否必须 取值范围 特殊字符
秒/Seconds [0,59] * , - /
分钟/Minutes [0,59] * , - /
小时/Hours [0,23] * , - /
日期/DayofMonth [1,31] * , - / ?
月份/Month [1,12]或[JAN,DEC] * , - /
星期/DayofWeek [1,7]或[MON,SUN] * , - / ?

特殊字符

特殊字符 含义
表示匹配该域的任意值。例如,在秒域用"*",表示每秒钟都会触发事件。
, 表示该域有多个取值。例如,在分钟域使用“5,10”,表示第5分钟、第10分钟会触发事件。
表示范围。例如,在小时域使用"5-7",表示从5到7点,即5,6,7点触发一次。
表示“起始时间/间隔时间”。例如,在分钟域使用“5/20”,表示从第5分钟开始,每隔20分钟触发一次,即5,25,45分钟。
? 仅适用于日期、星期域,因为两个域会互相影响,因此可以将此字符理解为“无意义的值”。例如,想要设置每月20日触发事件,则星期域需使用"?",表示不论20日指向星期几都会触发事件。

-勾选配置Cron任务:您也可以点击“”进入任务执行频率配置窗口,自行勾选Cron表达式每个域(秒/分钟/小时/日/周/月)的取值,配置窗口右上角会同步展示该执行频率对应的Cron表达式。例如:0 0 12 * * ?,表示每天中午12点执行一次。

说明:执行频率为必填项,不能为空。

• *索引库:选择存储持久化数据的索引库。

说明:索引库为必选项,不能为空。 

4. 预览数据

在创建目标模型的过程中,完成指标模型基本信息以及模型信息的配置后,您可以点击“模型配置”步骤条或“持久化配置”步骤条下方的【数据预览】,预览基于当前配置参数生成的指标数据,便于及时根据实际需求调整指标模型的配置参数。如下图所示:

页面右侧弹出的抽屉中展示了此模型定义的指标数据,包括指定统计周期内的指标趋势图、指标数据,如下所示:

 

目标模型数据预览项说明:

  参数 参数说明
筛选 查询类型 必选项。设置筛选的类型,可选项:范围查询、即时查询。
时间范围/时间

必选项。设置筛选的时间范围或时间点,具体如下:

・当查询类型选择“范围查询”时,需配置具体的“时间范围”,默认为“最近30分钟”。筛选成功生效后,预览抽屉下方的<指标趋势图>、<指标数据预览表>区域将只展示匹配此时间范围的数据预览结果。

・当查询类型选择“即时查询”时,需配置具体的“时间”点,默认为当前日期及当前时刻。筛选成功生效后,预览抽屉下方的<指标数据预览表>区域将展示此时间点的数据预览结果。

提示:选择“即时查询”后,仅可查看指定时间点的<指标数据预览表>。

筛选条件

选填项。设置筛选的维度(lables字段值)及维度值,如设置的筛选维度为“cpu”、维度值为“1”,下方的<指标趋势图>、<指标数据预览表>区域将展示维度包含“cpu=1”的统计结果。点击“+添加筛选条件”可添加多个维度条件。

指标趋势图预览 指标趋势图 仅当选择【范围查询】时,可查看此趋势图。<指标趋势图>以时间为横轴,以度量值(度量值单位为系统自动转换的单位)为纵轴,展示了符合筛选条件的指标在指定时间范围内的趋势。通过预览指标趋势,您可根据实际指标需求及时调整指标模型的相关参数。
指标数据预览 指标数据预览表

<指标数据预览表>展示了指定时间周期/时间点内符合筛选条件的指标数据,具体如下:

・维度:即指标模型执行计算公式(即查询语句)后,在来源日志库中查询到的指标数据的lables字段值;

・时间:即指标模型执行计算公式(即查询语句)后,在来源日志库中查询到的指标数据的@timestamp字段值;

・度量值:即指标模型执行计算公式(即查询语句)后得到的计算结果。为便于展示且方便用户查看,在预览时,此度量值的单位为系统自动转换的单位。

 

 

说明:数据预览抽屉默认展示最近30分钟的数据,数据的默认步长会因指标模型已配置的查询语言及计算公式中的数据间隔(interval)值的不同而有所不同,具体如下:

1. 当指标模型的查询语言为“PromQL”,预览数据时默认步长为5min;

提示:在时序数据中,“步长”指的是时间序列相邻数据点之间的时间间隔或间距,步长的设置对于时序数据的分析、建模非常重要,需要结合具体场景及数据特征进行设置,较小的步长可以提供更为详细和动态变化的数据,同时也会导致数据量激增从而提高对计算性能的要求。

•  批量导入创建目标模型

进入目标模型配置页面,点击列表上方的【导入】按钮,在弹出的窗口中选中包含指标模型配置信息的文件,点击【打开】后即可批量导入并创建目标模型。

注意:

1. 仅支持导入json格式的文件;

2. 支持导入多个目标模型:导入时,若指标模型的数据视图名称不存在,则导入操作失败。您需在完成对应数据视图的创建后,再进行导入操作;若AnyRobot中存有重名的指标模型对象,则导入动作将会停止,导入操作失败;

3. 批量导入失败后,您可在审计日志中查看对应的“失败”记录。

在目标模型列表中勾选某一指标模型后,点击列表上方的【导出】按钮,可将已创建的指标模型以“.json”格式导出,可供其他场景快速应用,如下所示:

提示:支持导出多个指标模型。