前言¶
DeepSeek Harness (DSH) 是智能體開發工具,運行過程中需要指標反饋。現有的監控方案可能面臨數據泄露風險,或者需要複雜的配置。作爲 DSH 插件生態的一部分,dsh-prometheus 提供了一套開箱即用的監控方案。
插件介紹¶
該插件由 xxiaoxiong 維護,類別爲 admin-security,採用 MIT 許可證。它旨在爲 DeepSeek Harness 提供隱私友好的 Prometheus 指標和 Grafana 儀表盤。
監控範圍¶
插件覆蓋了 DSH 運行時的多個維度:
- 會話與 Agent:監控活躍會話、Agent 輪次、步驟、錯誤及持續時間。
- LLM 層:監控請求率、終端狀態、延遲以及輸入/輸出/推理/緩存的 Token 計數。
- 工具調用:監控工具調用率、標準化狀態(成功/錯誤)及延遲。
- 審批與子代理:監控審批請求、子代理的啓動、結果及持續時間。
- 後臺任務:監控後臺任務的狀態(活躍/啓動/完成/被殺/失敗)及持續時間。
- 系統診斷:監控進程啓動時間及基數溢出診斷。
安裝與配置¶
首先將插件安裝到 DSH 的 monitoring 配置集,並驗證配置層是否正確插入:
dsh plugin --profile monitoring add dsh-prometheus
dsh --profile monitoring --dump-config
安裝後,插件默認處於 auto 模式。該模式會在激活時做如下決策:
1. 如果 DSH 的 webServer 已經激活且安全綁定,則在現有路由上註冊 /metrics 端點。
2. 否則,在 127.0.0.1:9464 啓動一個獨立的監控端點。
若需強制使用獨立端點(例如在 Docker 環境中),可在 cordis.patch.yml 中配置:
- id: prometheus
config:
enabled: true
mode: standalone
host: 127.0.0.1
port: 9464
path: /metrics
allowRemote: false
maxLabelValues: 64
maxLabelValueLength: 80
使用示例¶
- 啓動本地棧:使用提供的 Docker 示例啓動 Prometheus 和 Grafana。
docker compose -f examples/docker-compose.yml up -d
- 抓取指標:通過 curl 驗證端點是否可用。
curl http://127.0.0.1:9464/metrics
- PromQL 查詢:查看 Agent 的吞吐量。
sum(rate(dsh_agent_turns_total[5m]))
隱私與限制¶
- 數據隱私:收集器從不導出提示詞、用戶/助手消息、系統提示詞、工具參數或結果。僅導出四個運行時可控的標籤鍵:
provider、model、tool和job kind。 - 遠程暴露:遠程暴露沒有內置的身份驗證或 TLS,啓用
0.0.0.0或遠程 WebServer 路由前需閱讀SECURITY.md。 - 基數限制:標籤值受
maxLabelValues(默認 64)和maxLabelValueLength(默認 80)限制,超出或非法的值會被歸爲__other__。 - 升級與移除:將每個 DSH 升級視爲兼容性事件;移除插件不會刪除已存儲的 Prometheus 數據。
注意事項¶
- 版本兼容性:當前版本爲
0.1.0開發者預覽版,兼容性測試僅針對 DSH0.1.0-rc.6。 - 依賴要求:需要 Node.js
^22.19.0 || >=24.0.0及 Cordis^4.0.1。 - 權限與來源:插件以當前 DSH 進程權限運行,安裝前請檢查源碼與許可證。
生態背景¶
DeepSeek Harness 理念是「一切皆插件」。該插件在社區目錄 https://www.skillhub.cn/plugins/xxiaoxiong/dsh-prometheus 可查,與 DeepSeek / 幻方無官方從屬關係。