本页内容

APM span 对象

以下对象与 apmspan API 直接相关。

每个属性对应于遥测数据源中 otel_traces 表的一列。 有关列的列表,请参阅支持的遥测数据列。

APM span

APM span 对象表示一个 span(trace 中的单个操作,例如 HTTP 请求、数据库查询或函数调用)。

Span 构成层次结构,从根 span 开始,根 span 表示请求的第一个操作。 其他每个 span 都是其操作开始时所在 span 的子 span。

APM span 对象具有以下属性:

Property Type Description
timestamp integer span 开始时的 Unix 时间(以纳秒为单位)。

属性行为:
- 只读
traceid string span 所属 trace 的 ID。

属性行为:
- 只读
spanid string span 的 ID。

属性行为:
- 只读
parent_spanid string 父 span 的 ID。
根 span 为空。

属性行为:
- 只读
trace_state string 跟踪工具附加到 trace 的其他数据(如果有),请参阅 W3C Trace Context。

属性行为:
- 只读
span_name string span 表示的操作名称(例如 mysqli_query)。

属性行为:
- 只读
span_kind string span 的角色。

可能的值:
Unspecified - 未指定 span 类型;
Internal - 在应用程序内部执行的操作;
Server - 处理传入请求;
Client - 传出请求;
Producer - 创建异步操作(例如发送消息);
Consumer - 处理异步操作。

属性行为:
- 只读
service_name string 生成 span 的服务名称(例如 zabbix-frontend),取自 OpenTelemetry 的 service.name 资源属性。

属性行为:
- 只读
resource_attributes object span 的键值对资源属性(例如 host.name: eabf8c2a5ddc)。

属性行为:
- 只读
scope_name string 生成 span 的检测范围名称。

属性行为:
- 只读
scope_version string 检测范围的版本。

属性行为:
- 只读
span_attributes object span 的键值对 span 属性(例如 db.system: mysql)。

属性行为:
- 只读
duration integer span 的持续时间(以纳秒为单位)。

属性行为:
- 只读
status_code string span 表示的操作状态。

可能的值:
Unset - 未向 span 分配明确状态;
Ok - 操作已成功完成;
Error - 操作完成时发生错误。

属性行为:
- 只读
status_message string 有关 span 状态的其他信息(如果有)。

属性行为:
- 只读
events array span 的 event 对象数组,即操作期间值得注意的时间点(例如异常)。

属性行为:
- 只读
links array span 的 link 对象数组,这些对象指向同一 trace 或其他 trace 中的相关 span。

属性行为:
- 只读