AnyRobot 链路模型管理模块支持手动创建、批量导入创建两种方式创建链路模型,手动配置过程中支持预览链路模型数据,帮助及时调整配置参数。配置说明如下:
提示:您可以参照下方配置说明手动创建所需链路模型,也可以导入包含链路模型配置参数的合规文件批量创建链路模型。
创建流程如下:
快速阅读链接:
进入数据管理 > 数据模型 > 链路模型 配置页面,点击链路模型管理列表左上方的【+新建】按钮,进入“新建链路模型”的配置流程。如下所示:
链路模型基本信息包括链路模型名称、标签、备注等参数,请参考下表限制条件进行配置:
配置参数 | 参数说明 | 限制条件 |
*链路模型名称 |
填写链路模型的名称,此名称具有全局唯一性。 |
• 链路模型名称不能重复,且不能为空; • ≤40个字符 |
标签 | 根据实际需求设置链路模型的标签信息,用于业务标识。可通过回车键添加多个标签。 |
• 标签不能包含 /:?\"<>|:?‘’“”!《》,#[]{}%&*$^!=.' 特殊字符,且不能超过40个字符; • 最多支持创建5个标签 |
备注 | 根据实际需求填写链路模型的其他属性信息 |
• ≤255个字符 |
AnyRobot 链路模型支持接入数据视图、数据连接两类来源数据:数据视图类型的数据来源即 AnyRobot 内部数据,数据连接类型的数据来源即为已接入 AnyRobot 的第三方链路数据。
1)当*数据来源类型配置为“数据视图”时,需要进一步配置此链路模型的 Span 属性信息,配置界面如下所示:
配置参数说明如下:
• *选择数据视图:点击【选择数据视图】按钮,在右侧弹出的配置抽屉中勾选所需数据视图作为链路模型的来源数据。配置时,支持搜索筛选配置,若列表中没有满足需求的数据视图,您可以点击最下方“新建数据视图”按钮进行创建。如下所示:
注意:仅支持配置1个来源数据视图,不支持多选。
选中来源数据视图后,下方跨度(Span)属性字段的配置枚举字段皆来自于此数据视图。请参见 跨度(Span)基本属性 了解其定义。
• *Trace ID:Trace ID 是整个链路的全局唯一标识符,同一 Trace 下的所有 Span 都会共享一个 Trace ID。点击配置文本框,在下拉框中指定来源数据视图中的 Trace ID 字段。
提示:
1. Trace ID 字段不能为空,且仅支持设置 1 个Trace ID 字段;
2. Trace ID 字段仅支持 text、keyword 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword 类型的字段。
• *Span ID:Span ID 是单个 Span 的全局唯一标识符,每个 Span 代表一次请求调用过程中的某个具体操作。点击配置文本框,在下拉框中指定来源数据视图中的 Span ID 字段。
提示:
1. Span ID 字段不能为空,且支持设置多个 Span ID 字段;
2. Span ID字段仅支持 text、keyword、integer、long 四种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword、integer、long 类型的字段。
• *父 Span ID
前置条件:此项为选填项。配置后,仅当满足此前置条件,下方的*选择字段方可生效;若未配置,则下方*选择字段配置的字段即为父 Span ID 字段;
提示:
1. AnyRobot兼容多种类型的 trace 数据,包括标准的 OpenTelemetry、非标准的 OpenTelemetry、Jeager、SkyWalking等。在标准OpenTelemetry结构中,通常有明确的 Parent.SpanID 字段来标识父子关系,此种情况无需配置额外的前置条件来过滤和连接父子 Span。而针对其他非标准格式的链路数据,您需要根据接入数据的具体数据格式,配置“前置条件”来确定和匹配链路中的正确父子关系字段。若父 Span ID 字段无前置过滤条件需求,则无需配置此项;
2. 配置前置条件时,最多支持设置 3 层级的过滤条件,每层级最多包含 10 个过滤条件。
*选择字段:父 Span ID 即当前 Span 的上一级 Span 的ID,表示调用的层次结构。点击配置文本框,在下拉框中指定来源数据视图中的父 Span ID 字段。
提示:
1. 父 Span ID 字段不能为空,支持设置多个父 Span ID 字段;
2. 父 Span ID字段仅支持 text、keyword、integer、long 四种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword、integer、long 类型的字段。
• *Span 名称:Span 名称是对 Span 所代表操作的简短描述。点击配置文本框,在下拉框中指定来源数据视图中的Span 名称字段。
提示:
1. Span 名称 字段不能为空,且仅支持设置 1 个 Span 名称字段;
2. Trace ID字段仅支持 text、keyword 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword 类型的字段。
• *Span 时间:包括下方的「Span开始时间」、「Span 结束时间」、「Span 持续时间」。
提示:「Span开始时间」为必填项,「Span 持续时间」=「Span结束时间」与「Span开始时间」的差值,因此「Span结束时间」与「Span持续时间」择其一进行配置即可。
- *Span 开始时间:指定来源数据视图中的Span 开始时间字段,并配置对应的时间格式,支持:unix_millis(毫秒时间戳)、unix_micros(微妙时间戳)、unix_nanos(纳秒时间戳);
提示:
1. Span 开始时间及其时间格式不能为空;
2. Span 开始时间字段仅支持 integer、long 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 integer、long 类型的字段;
3. 若 Span 开始时间配置为负数,链路模型可以成功保存,且链路图表(甘特图)中展示的开始时间为1970年前(RFC3339格式),持续时间为0。
- Span 结束时间:指定来源数据视图中的Span 结束时间字段,并配置对应的时间格式,支持:unix_millis(毫秒时间戳)、unix_micros(微妙时间戳)、unix_nanos(纳秒时间戳)。配置后,链路图表(甘特图)展示时会自动补齐 Span 持续时间,时间戳格式统一为unix_micros(微妙时间戳)。
提示:
1. 「Span结束时间」与「Span持续时间」需择其一进行配置;
2. Span 结束时间字段仅支持 integer、long 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 integer、long 类型的字段;
3. 若 Span 结束时间配置为负数,链路模型可以成功保存,链路图表(甘特图)中展示的开始时间为1970年前(RFC3339格式),持续时间为 0;若配置的 Span 结束时间 ≤ Span 开始时间,链路模型可以成功保存,链路图表甘特图中展示的持续时间为 0;
4. 若 Span 结束时间单位与字段的实际时间单位不一致,链路模型可以成功保存,链路图表(甘特图)中展示的结束时间显示错误、持续时间计算错误;
- Span 持续时间:指定来源数据视图中的Span 耗时字段,并配置对应的时间格式,支持:ms(毫秒)、us(微妙)、ns(纳秒)。配置后,链路图表(甘特图)展示时系统会自动补齐 Span 结束时间,时间单位统一为us(微妙)。
提示:
1. 「Span持续时间」与「Span结束时间」需择其一进行配置;
2. Span 持续时间字段仅支持 integer、long 两种字段类型。因此配置时,下拉框中将自动过滤展示来源数据视图中 integer、long 类型的字段;
3. 若 Span 持续时间配置为负数或零,链路模型可以成功保存,链路图表(甘特图)中展示的 Span 持续时间为 0;若配置的Span 结束时间 ≤ Span 开始时间,链路模型可以成功保存,链路图表中的甘特图展示的持续时间为 0,时间单位统一为 us(微妙);
• Span 类型:描述了 Span 所代表操作的类型,包括UNSPECIFIED(未定义Span)、INTERNAL(内部 Span)、SERVER(服务端侧 Span)、CLIENT(客户端侧 Span)、PRODUCER(生产者 Span)、CONSUMER(消费者 Span)六种类型。此项为选填项,点击配置文本框,在下拉框中指定来源数据视图中的 Span 类型字段。
提示:Span 类型字段仅支持 text、keyword 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword 类型的字段。
• Span 状态:描述了 Span 的执行状态,包括OK(成功)、ERROR(错误)、UNSET(未知)三种状态。此项为选填项,点击配置文本框,在下拉框中指定来源数据视图中的 Span 状态字段。
提示:Span 类型字段仅支持 text、keyword 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword 类型的字段。
• *Span 所在服务名称:指记录当前 Span 操作的服务或组件的名称,用于定位哪些服务或组件参与了此 Span 请求调用。点击配置文本框,在下拉框中指定来源数据视图中的Span 所属服务名称字段。
提示:
1. Span 所在服务名称字段不能为空;
2. Span 所在服务名称字段仅支持 text、keyword 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword 类型的字段。
2)当数据来源类型配置为“数据连接”时,无需配置链路数据的属性信息,配置界面如下所示:
• *选择数据连接:在下拉框中选择此链路模型所需的来源数据连接。若下拉框中没有满足需求的数据连接,请进入数据管理>数据模型>数据连接 页面,完成所需数据连接的创建后再进行配置。
配置链路模型的关联日志,以便在后续的可视化应用中实现链路与日志数据的双向关联,通过关联下钻操作,为异常溯源、故障排查等场景提供更全面的关联分析。
提示:关联日志配置默认处于关闭状态。开启后,下方的「选择数据视图」、「Trace ID」、「Span ID」配置项均为必填项。
将“关联日志配置”后的“”按钮切换至““状态,配置关联的日志数据,以及关联参数,配置页面如下所示:
配置参数说明如下:
• *选择数据视图:点击【选择数据视图】按钮,在右侧弹出的配置抽屉中勾选此链路模型关联的数据来源。配置时,支持搜索筛选配置,若列表中没有满足需求的数据视图,您可以点击最下方“新建数据视图”按钮进行创建。如下所示:
注意:仅支持配置1个来源数据视图,不支持多选。
指定了关联的日志数据(数据视图)后,*Trace ID、*Span ID的配置枚举字段皆来自于此数据视图。配置时,点击对应配置项的配置文本框,在下拉框中指定日志数据中关联的Trace ID 字段/Span ID 字段。
提示:
1. Trace ID、Span ID 字段均不能为空;
2. Trace ID字段仅支持 text、keyword 两种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword 类型的字段。
2. Span ID字段仅支持 text、keyword、integer、long 四种字段类型。因此配置时,下拉框中将自动过滤并仅展示来源数据视图中 text、keyword、integer、long 类型的字段。
完成上述配置后,点击配置窗口下方的【数据预览】按钮,您可以预览基于当前配置参数定义的前10条链路数据,便于及时根据实际需求调整链路模型的配置参数。如下所示:
完成链路模型的各项参数配置后,点击下方【保存】按钮,即可完成链路模型的创建操作。
除了手动配置,您也可以基于链路模型的导入功能批量创建链路模型。
进入链路模型配置页面,点击列表上方的【导入】按钮,在弹出的窗口中选中包含链路模型配置信息的文件,点击【打开】后即可批量导入并创建链路模型。
注意:
1. 仅支持导入json格式的文件;
2. 支持同时导入多个链路模型。导入过程中,若AnyRobot中存有重名的链路模型对象,则导入动作将会停止,整个导入操作失败;
3. 批量导入失败后,您可在审计日志中查看对应的“失败”记录。
成功创建链路模型后,您可以在AnyRobot 数据应用模块(例如,链路图表模块)直接引用链路数据资源,对模型定义的链路数据进行可视化分析,实现故障瓶颈定位及问题追踪。详情请参见 链路图表 章节。