接入 OpenClaw 应用

更新时间:
复制为 MD 格式

OpenClaw 可通过 openclaw-cms-plugindiagnostics-otel 两个插件协同工作,将 AI Agent 的完整调用链路(Trace)和运行指标(Metrics)上报至云监控 2.0 应用监控。openclaw-cms-plugin 负责 Trace 上报,遵循 OpenTelemetry GenAI 语义规范,为每一次请求生成结构化的调用链路;diagnostics-otel 负责 Metrics 上报,实时采集 Token 消耗速率、调用 QPS、队列深度等运行指标。启用后,您可以在云监控 2.0 中查看 OpenClaw 的完整调用链路、模型调用耗时、Token 消耗明细、工具调用详情等监控数据。

使用限制

限制项

说明

OpenClaw 版本

v26.2.19 及以上。低于此版本不包含 diagnostics-otel 插件,请先升级。

上报协议

仅支持 HTTP/Protobuf,暂不支持 HTTP/JSON 和 gRPC。

数据类型

当前仅支持接收 Trace 和 Metric 数据,暂不支持 Log 数据。

云监控服务

已开通云监控 2.0 服务,并创建了工作空间。

步骤一:获取接入命令

在安装插件之前,您需要先从云监控 2.0 控制台获取接入命令。

  1. 登录云监控 2.0 控制台,选择目标工作空间。

  2. 在左侧导航栏单击接入中心

  3. AI 应用可观测区域单击 OpenClaw 卡片。

  4. 在参数配置区域输入应用名,根据需求选择连接方式,然后单击 LicenseKey 右侧的点击获取

    页面下方将根据配置参数生成相应的接入命令,单击右上角可一键复制。命令中包含 Endpoint、LicenseKey 等接入点信息,如需手动安装请记录:

    参数

    说明

    示例

    Endpoint

    OTLP Trace/Metric 数据上报地址

    • https://proj-xtrace-xxx.cn-hangzhou-intranet.log.aliyuncs.com/apm/trace/opentelemetry/v1/traces

    • https://proj-xtrace-xxx.cn-hangzhou-intranet.log.aliyuncs.com/apm/trace/opentelemetry/v1/metrics

    x-arms-license-key

    数据写入鉴权的 LicenseKey

    d95vgxi0cn@xxxxx

    x-arms-project

    日志服务项目名称

    proj-xtrace-xxx-cn-hangzhou

    x-cms-workspace

    云监控 2.0 工作空间标识

    default-cms-xxx-cn-hangzhou

    serviceName

    应用名

    openclaw-xxx

步骤二:安装接入

方式一:一键安装(推荐)

打开 OpenClaw 所在机器的终端,粘贴上一步复制的安装命令然后执行:

curl -fsSL https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/openclaw-cms-plugin/install.sh | bash -s -- \
  --endpoint "https://你的Endpoint地址" \
  --x-arms-license-key "你的License-Key" \
  --x-arms-project "你的Project" \
  --x-cms-workspace "你的Workspace" \
  --serviceName "你的服务名"

安装脚本将自动完成以下操作:

  1. 检查环境(Node.js、npm、OpenClaw CLI)。

  2. 下载并解压 openclaw-cms-plugin 到 OpenClaw 扩展目录。

  3. 安装插件的运行时依赖。

  4. 自动定位 diagnostics-otel 扩展,如果未安装依赖会自动安装。

  5. 更新 openclaw.json 配置(两个插件的配置一次写完)。

  6. 重启网关使配置生效。

预期输出类似如下内容:

[INFO]  Checking prerequisites...
[OK]    Node.js v24.14.0
[OK]    npm 11.9.0
[OK]    OpenClaw CLI found
[INFO]  Downloading plugin...
[OK]    Downloaded
[INFO]  Extracting...
[OK]    Extracted
[INFO]  Installing npm dependencies...
[OK]    Dependencies installed
[INFO]  Locating diagnostics-otel extension...
[OK]    Found diagnostics-otel at: /home/.../extensions/diagnostics-otel
[OK]    diagnostics-otel dependencies already present
[INFO]  Updating config...
[OK]    Config updated
[INFO]  Restarting OpenClaw gateway...
[OK]    Gateway restarted

════════════════════════════════════════════════════
  ✅ openclaw-cms-plugin installed successfully!
════════════════════════════════════════════════════

安装参数

参数

必填

说明

--endpoint

OTLP 数据上报地址,从云监控 2.0 接入中心获取

--x-arms-license-key

数据写入鉴权的 LicenseKey

--x-arms-project

日志服务项目名称

--x-cms-workspace

云监控 2.0 工作空间标识

--serviceName

上报的服务名称,将作为应用名显示在云监控 2.0 的应用列表中

--plugin-url

自定义 tarball 下载地址

--install-dir

自定义安装目录

--disable-metrics

跳过 diagnostics-otel 配置,仅启用 Trace 上报,不启用 Metrics

方式二:手动安装

如需手动安装,请按照以下步骤操作。

1. 下载并解压插件

curl -fsSL -o openclaw-cms-plugin.tar.gz https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/openclaw-cms-plugin/openclaw-cms-plugin.tar.gz
tar -xzf openclaw-cms-plugin.tar.gz
cd openclaw-cms-plugin
npm install --omit=dev

2. 启用 diagnostics-otel 插件

openclaw plugins enable diagnostics-otel

3. 编辑配置文件

编辑 ~/.openclaw/openclaw.json,写入以下配置(将步骤一接入点信息替换到以下配置中):

{
  "plugins": {
    "allow": ["openclaw-cms-plugin", "diagnostics-otel"],
    "load": {
      "paths": ["<openclaw-cms-plugin 的安装路径>"]
    },
    "entries": {
      "openclaw-cms-plugin": {
        "enabled": true,
        "config": {
          "endpoint": "<Endpoint>",
          "headers": {
            "x-arms-license-key": "<YOUR-LICENSE-KEY>",
            "x-arms-project": "<YOUR-ARMS-PROJECT>",
            "x-cms-workspace": "<YOUR-WORKSPACE-ID>"
          },
          "serviceName": "<YOUR-SERVICE-NAME>"
        }
      },
      "diagnostics-otel": {
        "enabled": true
      }
    }
  },
  "diagnostics": {
    "enabled": true,
    "otel": {
      "enabled": true,
      "endpoint": "<Endpoint>",
      "protocol": "http/protobuf",
      "headers": {
        "x-arms-license-key": "<YOUR-LICENSE-KEY>",
        "x-arms-project": "<YOUR-ARMS-PROJECT>",
        "x-cms-workspace": "<YOUR-WORKSPACE-ID>"
      },
      "serviceName": "<YOUR-SERVICE-NAME>",
      "traces": false,
      "metrics": true,
      "logs": false
    }
  }
}

4. 重启网关

openclaw gateway restart

配置参数说明

openclaw-cms-plugin 配置

参数

类型

必填

说明

endpoint

String

OTLP 数据上报地址,从云监控 2.0 接入中心获取。

headers.x-arms-license-key

String

数据写入鉴权的 LicenseKey,用于身份认证。

headers.x-arms-project

String

项目标识,指链路数据归属的日志服务项目名称。

headers.x-cms-workspace

String

云监控 2.0 工作空间标识,指定数据上报的目标工作空间。

serviceName

String

上报的服务名称,将作为应用名显示在云监控 2.0 的应用列表中。

diagnostics-otel 配置

参数

类型

必填

说明

enabled

Boolean

是否启用 diagnostics 诊断功能。设置为 true 开启。

otel.enabled

Boolean

是否启用 OpenTelemetry 数据导出。设置为 true 开启。

otel.endpoint

String

OTLP 数据上报地址。插件会自动追加 /v1/traces/v1/metrics 路径。

otel.protocol

String

上报协议。当前仅支持 http/protobuf

otel.headers

Object

上报请求携带的认证头信息。

otel.serviceName

String

上报的服务名称,建议与 openclaw-cms-plugin 配置的 serviceName 保持一致。

otel.traces

Boolean

是否上报 Trace 数据。建议设为 false,Trace 由 openclaw-cms-plugin 负责。

otel.metrics

Boolean

是否上报 Metric 数据。设为 true 可查看 Token 用量、调用次数、耗时等指标。

otel.logs

Boolean

是否上报 Log 数据。云监控 2.0 暂不支持,建议设为 false

otel.sampleRate

Number

Trace 采样率,取值 0.0 ~ 1.0,仅对根 Span 生效。1 表示全量采集。

otel.flushIntervalMs

Number

数据批量刷新间隔,单位毫秒,最小值 1000,默认 60000

步骤三:验证安装

执行以下命令检查插件是否生效:

openclaw plugins list

预期输出类似如下内容:

┌──────────────┬──────────┬──────────┬────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬──────────┐
│ Name         │ ID       │ Status   │ Source                                                                                                         │ Version  │
├──────────────┼──────────┼──────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼──────────┤
│ OpenClaw     │ openclaw │ loaded   │ ~/.openclaw/extensions/openclaw-cms-plugin/index.ts                                                            │ 0.1.1    │
│ CMS Plugin   │ -cms-    │          │ Report OpenClaw AI agent execution traces to Alibaba Cloud CMS via OpenTelemetry                               │          │
│ Diagnostics  │ diagnost │ loaded   │ stock:diagnostics-otel/index.ts                                                                                │ 2026.3.1 │
│ OpenTelemetr │ ics-otel │          │ Export diagnostics events to OpenTelemetry                                                                     │          │
└──────────────┴──────────┴──────────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴──────────┘

步骤四:查看监控数据

安装完成后, 向 OpenClaw 发送几条消息,触发 Agent 执行。之后您可以在云监控 2.0 控制台查看 OpenClaw 上报的监控数据。

  1. 登录云监控 2.0 控制台,选择目标工作空间。

  2. 在左侧导航栏选择应用可观测 > AI 应用可观测

  3. 在应用列表中找到您配置的服务名称(如 openclaw-gateway)。

  4. 单击应用名称或选择调用链分析查看调用链路、Token 消耗、LLM 输入输出和耗时分布。

卸载

如需卸载插件,执行以下命令:

curl -fsSL https://arms-apm-cn-hangzhou-pre.oss-cn-hangzhou.aliyuncs.com/openclaw-cms-plugin/uninstall.sh | bash

卸载脚本将自动清理 openclaw-cms-plugin 的安装目录和 openclaw.json 中的所有相关配置,包括 diagnostics-otel 的配置也会一并禁用。

参数

说明

-y / --yes

跳过确认提示。

--install-dir

指定插件安装目录(不传则自动探测)。

--keep-metrics

仅卸载 openclaw-cms-plugin(Trace),保留 diagnostics-otel(Metrics)的配置。

常见问题

配置完成后控制台看不到数据?

请依次排查:

  1. 确认 OpenClaw 版本 ≥ v26.2.19(执行 openclaw --version 检查)。

  2. 确认网关已重启(一键安装会自动重启,手动安装需执行 openclaw gateway restart)。如果重启失败,可执行openclaw doctor,完成修复后再重启网关。

  3. 确认 Endpoint 地址正确,且网络可达(可通过 curl 测试连通性)。

  4. 确认三个 Header 值(x-arms-license-keyx-arms-projectx-cms-workspace)均已正确填写。

  5. 注意 flushIntervalMs 默认为 60 秒,短时任务可能需要等待一段时间才能看到数据。

接入会影响 OpenClaw 的性能吗?

影响极小。openclaw-cms-plugin 使用 OpenTelemetry 的批量导出机制,Span 数据在内存中缓冲、定时批量上报,不会阻塞 Agent 的正常处理流程。

可以只装 Trace 不装 Metrics 吗?

可以。安装时加 --disable-metrics 参数即可跳过 diagnostics-otel 的配置,仅启用 Trace 上报。

diagnostics-otel 的 Trace 和 openclaw-cms-plugin 的 Trace 会冲突吗?

不会。安装脚本默认将 diagnostics.otel.traces 设为 false,由 openclaw-cms-plugin 专门负责 Trace 上报。两者同时上报也不会有冲突。

已经配置过 diagnostics-otel 了,安装会覆盖我的配置吗?

不会。安装脚本采用合并更新策略——只更新 endpointheaders 等必要字段,保留您已有的 traceslogssampleRate 等配置不变。

为什么 Token 消耗一直是 0?

OpenClaw 从 v2026.3.8 版本开始引入了一个 BUG,会导致 Token 消耗采集有误,已在推进社区加速修复。相关 issue:openclaw/openclaw#46616

可以使用 gRPC 协议上报吗?

当前 OpenClaw 的 diagnostics-otel 插件仅支持 http/protobuf 协议,设置 grpc 会被静默忽略,不会有报错但也不会生效。