跳到主要内容

遥测与数据上报

CloudBase CLI 会收集匿名使用数据,用于改进产品体验、定位故障与评估功能使用情况。本文说明上报的内容、脱敏范围,以及如何关闭上报。

上报的内容​

CLI 在命令执行过程中(执行成功、失败、以及无效命令)上报以下数据:

类别具体内容
命令调用命令名、子命令、执行耗时、是否成功、错误类型与错误信息(已脱敏)
运行环境操作系统类型与版本、CPU 架构、Node.js 版本、CLI 版本
设备标识基于主机名、CPU 型号与网卡 MAC 地址计算的 SHA256 哈希(取前 32 位,不可逆)
账号与环境登录账号 ID、当前环境 ID(仅在已登录或已指定环境时上报)
调用方来源识别到的 AI 编程工具名(如 codebuddy)、识别方式与置信度、判定所依据的环境变量名

关于「调用方来源」​

CLI 会探测当前命令是否运行在 AI 编程工具(如 Cursor、CodeBuddy 等)的会话中,以便改进这些工具下的使用体验。此处仅上报归一化后的工具名(如 codebuddy)与判定依据的环境变量名(用于审计),不上报环境变量的取值。

识别失败时该字段留空,不会用 unknown 之类的占位值填充。

数据脱敏​

所有上报数据在发送前都会经过统一脱敏:

  • 密钥类字段(SecretId、SecretKey、Token、密码等)整值替换为 [REDACTED]
  • 命令行参数(argv):先按参数名脱敏,再做文本模式匹配 —— 覆盖内联在参数里的临时密钥、JWT、长串凭据
  • 错误信息与堆栈(message、stack):按文本模式脱敏其中的密钥
  • 形如 JWT 的字符串整体替换

关闭上报​

将环境变量 TCB_DISABLE_REPORT 设为任意非空值,即可关闭全部数据上报。

# 仅对本次命令生效
TCB_DISABLE_REPORT=1 tcb env list

# 对当前终端会话内的所有命令生效
export TCB_DISABLE_REPORT=1

如需长期关闭,可写入 shell 配置文件:

# zsh(macOS 默认)
echo 'export TCB_DISABLE_REPORT=1' >> ~/.zshrc

# bash
echo 'export TCB_DISABLE_REPORT=1' >> ~/.bashrc

关闭后 CLI 不会再发起任何上报请求,所有功能均不受影响。

该变量只要非空即生效 —— 即使是 TCB_DISABLE_REPORT=0 或 =false 也会关闭上报(CLI 判断的是「有没有值」,而不是「值是不是真」)。它优先级最高,其他开关无法覆盖。

上报行为说明​

  • 上报在后台异步进行,不阻塞命令执行、不影响命令输出
  • 上报失败会被静默忽略,不会中断命令,也不会打印错误
  • 上报接口为腾讯灯塔(otheve.beacon.qq.com)