WorkBuddy 接入可观测功能
WorkBuddy 接入可观测
通过开源的 LoongSuite Pilot 将 WorkBuddy 的 Trace 上报至 云监控 BCM → Agent 可观测。
LoongSuite Pilot 是本地采集服务,基于 WorkBuddy 原生 Hook 机制运行,无需修改 WorkBuddy 本体。它会采集 Agent 会话中的模型调用、工具调用、Token 用量、TTFT、调用耗时及错误信息,并转换为标准 OpenTelemetry GenAI Trace 后通过 OTLP/HTTP 上报。
同一台机器只需要安装一次;安装后会自动发现本机已安装的 AI 编程助手(WorkBuddy、Claude Code、Codex、Cursor 等),可按需只开启 WorkBuddy。
前提条件
- 已安装并使用过 WorkBuddy,本机存在
~/.workbuddy目录(官方验证版本:WorkBuddy Desktop macOS 5.2.6、Windows 11 5.3.5.0;本文在 WorkBuddy AI macOS 5.4.2 上实测) - WorkBuddy 的配置目录必须是
~/.workbuddy。LoongSuite Pilot v1.5.2 把 WorkBuddy 的根目录硬编码为~/.workbuddy:Hook 写入~/.workbuddy/settings.json,会话记录只扫描~/.workbuddy/projects,根目录之外的 transcript 会被静默丢弃。专享版桌面端(如 WorkBuddy AI)主进程会注入WORKBUDDY_CONFIG_DIR=~/.workbuddy-ai,此时采集不到任何数据,需先按「常见问题」里的办法处理。检查方式:
1for p in $(pgrep -f "WorkBuddy"); do ps eww -o command= -p $p | tr ' ' '\n' | grep WORKBUDDY_CONFIG_DIR; done | sort -u
curl或wget;Windows 需 PowerShell 5.1 及以上- Node.js 为可选:安装器会自动下载托管 Node 运行时(当前为 v22.22.2)与预编译
node_modules,本机无 Node 也能安装。如需复用系统 Node,可加--prefer-system-node,此时要求 Node ≥ 18 - 百度 Agent 可观测接入点与 Token(见步骤1)
步骤1:获取接入点与 Token
- 接入点:
http://apm-collector.bj.baidubce.com - Authentication:
<Authentication>
步骤2:安装 LoongSuite Pilot
macOS、Linux、WSL:
1curl -fsSL https://loongcollector-community-edition.oss-cn-shanghai.aliyuncs.com/loongsuite-pilot/installer.sh \
2 -o /tmp/loongsuite-pilot-installer.sh && \
3bash /tmp/loongsuite-pilot-installer.sh install \
4 --agents "workbuddy"
| 参数 | 描述 | 示例 |
|---|---|---|
| --agents | 只采集指定的 Agent。建议显式指定 workbuddy,否则安装器会自动勾选本机检测到的全部 AI 编程助手,并向 ~/.claude/settings.json 等文件注入 Hook |
workbuddy |
验证接入状态
1# 查看 LoongSuite Pilot 运行状态
2loongsuite-pilot status
3# 查看当前采集配置和组件发现结果
4loongsuite-pilot info
步骤3:配置百度 Agent 可观测接入信息
安装器不提供 OTLP 相关命令行参数,接入信息需要写入配置文件。编辑:
1vim ~/.loongsuite-pilot/config.json
配置成类似(agents 段保持安装器写入的结果):
1{
2 "enabled": true,
3 "collectLog": false,
4 "collectTrace": true,
5 "serviceName": "workbuddy",
6 "otlpTrace": {
7 "endpoint": "<endpoint>",
8 "headers": {
9 "authentication": "<authentication>"
10 },
11 "captureMessageContent": true,
12 "debug": true
13 },
14 "agents": {
15 "workbuddy": {
16 "enabled": true
17 }
18 }
19}
| 参数 | 描述 | 示例 |
|---|---|---|
| serviceName | 上报到百度 Agent 可观测的应用名称 | workbuddy |
| otlpTrace.headers.authentication | 步骤 1 中拿到业务系统 Authentication | http://apm-collector.bj.baidubce.com |
| otlpTrace.endpoint | 步骤 1 中拿到的接入点 | <Authentication> |
| otlpTrace.captureMessageContent | 是否将模型输入输出上报至百度 Agent 可观测平台 | true |
| otlpTrace.debug | 是否打开 Trace 转换的本地调试日志,接入调试期建议开启 | true |
注意:
serviceName会覆盖所有 Agent。如果本机同时开启了多个编程助手,它们会以同一个service.name上报;需要按助手区分时,删掉serviceName改用serviceNamePrefix(例如ai-coding-agent),Pilot 会上报为<prefix>-<agentType>,如ai-coding-agent-workbuddyconfig.json中存有鉴权 Token,建议执行chmod 600 ~/.loongsuite-pilot/config.json,且不要提交到代码库captureMessageContent: true会将会话的输入输出(含代码片段)上报至 Agent 可观测,敏感场景请设为false,此时仍保留会话、模型调用、工具调用、Token 用量等结构化数据
步骤4:重启
1loongsuite-pilot restart
验证接入状态(info 会回显当前生效的完整配置):
1loongsuite-pilot status
2loongsuite-pilot info
步骤5:验证接入
重新启动 WorkBuddy,发起一次完整 Agent 对话,例如:
1你好,请只回复 hello
等待本轮 Agent 执行结束(Stop)后约 30 秒,应产生增量采集结果。可通过以下命令查看采集结果目录:
1ls "$HOME/.loongsuite-pilot/logs/output"
WorkBuddy 的采集结果以 JSONL 文件形式按日期滚动写入,文件名形如 workbuddy-<日期>.jsonl。
然后到 云监控 BCM → Agent 可观测 搜索 service.name = <你设置的应用名> 查看 Trace 数据。由于数据的处理存在一定延时,如果接入后在控制台没有查询到应用,请等待 30 秒左右。
升级
LoongSuite Pilot 会自动检查并在后台完成升级,无需手动执行升级命令;升级后会继续使用当前采集配置。需要回退时执行 loongsuite-pilot rollback。
卸载
1curl -fsSL https://loongcollector-community-edition.oss-cn-shanghai.aliyuncs.com/loongsuite-pilot/installer.sh \
2 | bash -s -- uninstall --purge
--purge 会一并清理数据目录与已注入各 Agent 的 Hook 配置。
评价此篇文章
