Runtime 日志与调用链路
按工作区和 Runtime 查询调用记录,通过 Trace ID 定位方法、下游请求及错误,并区分 Hosted Service 环境日志。
Runtime 日志用于查看一次方法调用经过的步骤、耗时、错误和链路属性。它按 applicationRuntimeId 查询;Hosted Service 的进程输出和迁移日志按 environmentId 查询,两者是不同入口。
从控制台查询
- 进入目标工作区,点击顶部的 Runtime 日志。
- 从列表选择 Runtime。只有一个 Runtime 时自动选中;名称旁显示实际
applicationRuntimeId。 - 点击 查看调用链路,选择时间范围,查看调用列表和统计。
- 选择一条调用查看详情;已知 Trace ID 时,也可以先在页面输入,再打开指定链路。
当前身份必须能访问 Runtime 所属工作区。选择工作区或填写 Runtime ID 不会授予权限,跨工作区查询仍受当前登录身份及凭据范围限制。
两类日志如何配合
| 查询入口 | 选择范围 | 日志来源与内容 |
|---|---|---|
| Runtime 日志 | 工作区、applicationRuntimeId、最近时间范围;详情再提供 traceId | ARMS 调用链路,包括方法调用、耗时、错误和已记录的属性。 |
| Hosted Service 日志 | 工作区、项目、environmentId、开始与结束时间;可按请求或 Trace 标识搜索 | SLS 中归属于该后端环境的运行进程输出和迁移输出。 |
Runtime ID 不是平台应用 ID、项目 ID 或 Hosted Service 环境 ID。不要用页面地址中的应用编号替代 Runtime ID。
Runtime 详情会检查 Trace 是否属于所选 Runtime,再返回完整链路。它不是平台所有服务的原始进程日志,也不自动查询 Hosted Service 的输出。若调用已到达业务后端,继续使用 Hosted Service 环境日志,按故障时间和实际记录的请求标识排查。
日志中的敏感内容应在记录时处理。查询入口展示已记录的链路属性;提交给他人的排查材料仍应移除凭据和个人信息。
使用 CLI 调用公开 API
可以使用现有 baijimu api,无需配置 ARMS 云凭据。先从控制台 Runtime 列表取得真实 ID,将以下变量替换为本次实际值。
查询最近一小时的调用记录:
baijimu api get \
"/partner/v1/observability-service/api/monitoring/traces/$APPLICATION_RUNTIME_ID" \
--workspace-id "$WORKSPACE_ID" \
--query hours=1 \
--query pageNum=1 \
--query pageSize=20 \
--json分页从 pageNum=1 开始,结果在 data.records,总数在 data.total。时间范围按查询时刻向前计算,不能用 Hosted Service 的 startTime、endTime 参数替代。
查询统计:
baijimu api get \
"/partner/v1/observability-service/api/monitoring/statistics/$APPLICATION_RUNTIME_ID" \
--workspace-id "$WORKSPACE_ID" \
--query hours=1 \
--json查看指定链路时,在 trace-query.json 中填写两个真实标识:
{
"applicationRuntimeId": "填写 Runtime ID",
"traceId": "填写 Trace ID"
}baijimu api post \
/partner/v1/observability-service/api/otlp/trace-detail \
--workspace-id "$WORKSPACE_ID" \
--data @trace-query.json \
--json仅有 traceId 不能查询详情;必须同时指定其所属 Runtime。链路详情包括 data.spans 及各 Span 的属性。
处理错误与空结果
有效 CModel 响应 使用 HTTP 200,业务成败由 errorCode 决定。非零错误码是查询失败,不能当作空列表。
| 错误码或现象 | 排查方向 |
|---|---|
UNAUTHORIZED | 查询身份缺失或无效;检查登录状态。 |
FORBIDDEN | 当前身份不能访问该工作区、凭据范围不匹配,或 Trace 不属于所选 Runtime。 |
NOT_FOUND | Runtime 已不存在或不可用,重新确认列表和 ID。 |
INVALID_PARAM | 核对 Runtime ID、Trace ID 和查询参数。 |
LOG_QUERY_UNAVAILABLE | Runtime 范围或权限依赖不可用,保留查询条件交由平台维护者处理。 |
MONITORING_ERROR、OTLP_ERROR | 调用链路查询依赖失败或未配置,不能据此判断业务数据库密码错误。 |
| 成功但没有记录 | 检查 Runtime、时间范围、请求是否执行,以及采集延迟和保留范围。 |
定位一次业务错误时,保留故障时间与时区、Runtime ID、方法名、Trace ID、业务错误码,以及日志查询自身的结果。若 Runtime 链路显示下游调用失败,再检查对应 Hosted Service 环境日志;若没有进入业务后端,后端环境可能没有同次请求记录。