DeepSeek Harness Hub
← 返回列表

插件可观测套件fly3366/dsh-o11y-plugin

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

为插件统一导出链路、日志与指标遥测数据

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/14 · 已提供中文文档

为 deepseek-harness 提供统一的插件维度可观测性(trace/log/metric):注册全局 OTel providers + OTLP 导出,桥接 dsh 会话遥测,兼容 GenAI semconv

综合分
30.6
GitHub 分
30.6
用户评分
★ Stars
1
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add fly3366/dsh-o11y-plugin
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-settings@deepseek-ai/schemastery
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-o11y-plugin

deepseek-harness (dsh) 的统一
插件维度可观测(trace / log / metric)插件。

概述

dsh 自带会话级 OTel 遥测,但未向插件暴露 metric 或插件维度的可观测能力。
dsh-o11y-plugin 收敛该缺口:注册全局 OpenTelemetry providers,使任何使用标准
@opentelemetry/api 的插件都能经由单一、统一配置的管线导出 trace / metric /
log,并将 dsh 会话遥测桥接为 OTel log。面向希望获得标准、社区兼容可观测性而
不愿各自实现 OTel 的插件作者。

兼容性

| 项 | 值 |
|---|---|
| DSH 兼容性 | @deepseek-ai/dsh 0.1.5-rc.2(可选桥接钩子未变;无 dsh 服务依赖) |
| 运行时依赖 | 仅 @deepseek-ai/cordis 4.0.2 |
| 最后验证 | 基于 @deepseek-ai/cordis 4.0.2 / @deepseek-ai/dsh-settings 0.1.5-rc.2 的单元测试 |
| Node | ^22.19 \|\| >=24 |
| 适用 profile | headless、web |

基于官方 OpenTelemetry Node.js SDK,与 dsh session-telemetry-otel 同依赖族。

安装 / 卸载

从 npm 安装
dsh plugin --profile web add dsh-o11y-plugin

或 git 直装
dsh plugin --profile web add github:fly3366/dsh-o11y-plugin

从某 profile 移除
dsh plugin --profile web remove dsh-o11y-plugin

或运行时禁用:enabled=false

插件无状态,移除无需数据清理。

快速开始

dsh plugin --profile headless add github:fly3366/dsh-o11y-plugin
可选:指向 collector(无 collector 时静默丢弃)
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 dsh --profile headless "say hi"

任何插件经 @opentelemetry/api 调用 trace.getTracer(...) /
metrics.getMeter(...) / logs.getLogger(...) 即自动导出。
deepjit 为参考使用方,上报管线计数器与
GenAI(gen_ai.*)LLM span。

配置

当宿主 dsh 提供 settings 命名空间 API(@deepseek-ai/dsh-settings 的
installSettingsSection / settingsNamespace)时,同样的配置项会以 o11y
命名空间注册到 dsh Web 设置界面,可查看/编辑并持久化,下次 dsh 启动生效。

dsh 0.1.5 移除了 installSettingsSection,因此在该版本上插件会探测此 API
并优雅地空操作——配置仍由文件/环境变量驱动。若未来 dsh 恢复该 API,集成会自动重新生效。

参考用的 Web 设置卡片(客户端部分)在 wip/settings-ui 分支开发;dsh 尚不允许
外部 bundle 注入 web 客户端组合,故未随 main 发布。

| 配置 | 默认 | 说明 |
|---|---|---|
| enabled | true | 总开关 |
| serviceName | ''(→ OTEL_SERVICE_NAME → dsh-plugin) | OTel resource service.name |
| endpoint | ''(→ OTEL_EXPORTER_OTLP_ENDPOINT → http://localhost:4318) | OTLP/HTTP endpoint |
| enableTraces / enableMetrics / enableLogs | true | 按信号开关 |
| metricExportIntervalMs | 60000 | metric 周期导出间隔 |
| bridgeSessionTelemetry | true | 是否桥接 dsh 会话遥测到 OTel log |

敏感项:不读取、不存储凭据;仅可选的 OTLP endpoint 涉及网络。

权限与数据

- 文件:不写任何文件;遥测导出前均在内存。
- 网络:仅向配置的 endpoint 发 OTLP/HTTP;无 collector 时静默丢弃。
- 凭据:无。
- 用户数据:桥接时在内存观察 session-telemetry record 并转为 OTel log;
本插件不做任何持久化。

故障排查

- endpoint 无 collector → batch 静默丢弃(预期行为)。
- 导出错误 → 经 OTel diag 暴露;检查 endpoint 与 collector 可用性。
- 回滚:dsh plugin --profile  remove dsh-o11y-plugin 或 enabled=false。

开发

npm install
npm run typecheck
npm test
npm run build

欢迎贡献;请保持 OTel SDK 依赖族与 dsh session-telemetry-otel 对齐,以利社区兼容。

许可与安全

MIT。安全问题请按 SECURITY.md 私下报告。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

同作者(fly3366)的其他插件

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群