智能體網關是控制平面:鑑權工具、扇出模型調用、執行預算。日誌在事故後講故事,而 Prometheus 指標能在沒人被叫醒前提示延遲是否緩慢漂移。2026 年,成熟的 OpenClaw 部署會在 /metrics(或兄弟管理端口)暴露文本指標,讓 SRE 以可預測的基數、統一的命名抓取,並僅在鏈路追蹤開啟時附帶 exemplar。本文說明抓取拓撲、直方圖與摘要取捨、標籤衛生、指標如何與既有健康檢查及日誌管線互補,以及如何用 LaunchAgent 定時器在租用的 Mac mini 上鏡像生產節奏完成排演。請同時閱讀 網關健康監控與可用性探測、日誌脫敏與 logrotate 紀律、升級與遷移清單,以及 nginx 流量排空與滾動切換,以便在發佈窗口內讓告警、日誌與指標保持同一敘事。
成本語境:MacHTML 雲 Apple Silicon 約 $16.9/天,足以長期保留一臺與生產抓取配置一致的排演機,而不必借用設計師筆記本。
網關為何需要一等 Prometheus 指標
與單體 Web 不同,網關複用大量異步流:WebSocket 工具調用、HTTP 批處理、供應商重試與文件系統副作用。單一 p99 尖峰在聚合 CPU 曲線上可能完全看不見,因為工作從一名 worker 轉移到另一名。Prometheus 計數器與直方圖在謹慎埋點下能以低開銷捕獲請求量、錯誤碼、隊列深度以及供應商特定的退避窗口;沒有它們,值班只能依賴尾部採樣,直到賬單揭示那些稀有卻昂貴的工具調用。
OpenClaw 的架構也意味著局部故障:某個供應商降級而其他仍健康。指標應暴露按路由的成功率片段,卻不能製造成千上萬種標籤組合。可觀測性與基數之間的張力貫穿下文每一節。
在靜態導出或邊緣託管場景,指標還能充當“輕量黑匣子”:即便你無法在 CDN 層運行完整 APM,也可以在網關進程內保留最關鍵的隊列與錯誤計數,為後續關聯日誌提供錨點。這樣當客戶報告“偶發卡頓”時,團隊能先對照直方圖桶遷移,再下鑽到脫敏日誌,而不是盲猜。
/metrics 監聽的抓取設計
除非能保證 mTLS 與嚴格 ACL,否則不要把指標與業務流量綁在同一套套接字。常見模式是在網關主機綁定 127.0.0.1:9108,由 node_exporter 邊車或 Prometheus agent 通過 SSH 隧道或 VPC 對等抓取。若必須遠程暴露,應在 nginx 終止 TLS,並要求內部 PKI 簽發的客戶端證書。
scrape_configs:
- job_name: openclaw-gateway
scrape_interval: 15s
metrics_path: /metrics
static_configs:
- targets: ['gateway-prod.internal:9108']
尊重 Prometheus 的過期語義:發佈失敗導致抓取中斷時,圖表應空白而非撒謊。將抓取間隔與 systemd 或 LaunchAgent 的重啟預算對齊,避免首次開機抓取恰好撞上冷 JIT 尖峰,誤導彈性伸縮。
若經由服務發現註冊多個實例,務必為每個實例設置一致的 instance 與 job 標籤,並在 relabel 階段剝離環境密鑰。對多區域部署,可用 region 這類低基數維度幫助分面,而不是把完整主機 FQDN 複製進每個指標名。
2026 年的直方圖與摘要
原生直方圖讓服務端暴露結構化桶,Prometheus 在副本間一致地計算分位數;客戶端摘要預先計算分位數,卻無法在 Pod 間安全平均。對 OpenClaw 網關,請求延遲與工具耗時應優先直方圖,桶邊界與 SLO 閾值對齊(例如 250ms、500ms、1s、2s、5s)。對無法控制的 SDK 可暫用摘要,但不要在同一指標名上混用兩種語義。
Exemplar 連接追蹤:僅在尾部採樣允許時附加 trace id,並在導出前剝離敏感客戶標識。macOS 排演機默認關閉 exemplar,以控制本地 TSDB 體積。
當團隊同時運行 Grafana 與 Alertmanager 時,提前約定直方圖 heatmap 的桶順序與顏色梯度,避免不同面板對同一 SLO 給出衝突視覺。對中文運營同事,文檔裡寫清“桶上界含不含”能減少誤讀。
基數護欄與標籤預算
每個唯一標籤集都是獨立時間序列。網關很容易誘惑你用 API key、模型名、租戶 UUID 或文件路徑打標籤——不要。改為輸出有界標籤如 provider="anthropic" 或 region="us-west",把高基數維度推入你已按日誌文章做脫敏的結構化日誌。為自定義指標設硬預算:每進程活躍序列少於兩百(不含 Go 運行時默認)。
用記錄規則把工具級計數摺疊到隊列:sum by (route)(rate(openclaw_tool_calls_total[5m])) 比導出每個工具 ID 更安全,除非這些 ID 是編譯期封閉的枚舉。
對多租戶 SaaS,若業務堅持“按租戶看延遲”,優先在查詢層用日誌派生或獨立計費倉,而不是在 Prometheus 裡按租戶拆時間序列;否則任何熱門租戶都會放大抓取成本與壓縮壓力。
與健康檢查和日誌配對
指標不應複製合成探測流量,而是互補:健康檢查回答“端口從外面是否可達”,計數器回答“內部隊列是否在排空”。把面板接線成:探針變紅時同時看到 gateway_errors_total 上升與直方圖停滯。按上文鏈接的遷移清單跟蹤升級時,若連續兩個間隔抓取成功率低於五個九,應暫停自動擴縮容以免放大噪聲。
當日志管線引入新的脫敏規則時,回寫一份“指標—日誌關聯表”,列出哪些 label 與哪些日誌字段可 join,避免值班在壓力下發明臨時查詢。
nginx 排空期間的抓取協同
滾動切換會在進程退出前調整上游權重;若服務發現滯後,Prometheus 可能短暫打到正在終止的 Pod。使用就緒門,讓端點在排空開始瞬間從 SD 消失,與引言中 nginx 滾動指引一致。若經由 nginx 抓取,為 /metrics 增加專用 location 與 IP 白名單,不要複用按無關節奏輪換的公共 TLS 證書。
在雙活或多入口場景,記錄每次權重調整的時間戳到 Grafana 註釋,便於事後對齊抓取失敗窗口與流量曲線。
本地抓取器的 macOS LaunchAgent 模式
在開發者筆記本與雲 Mac mini 上,LaunchAgent 比 cron 更準時,也能把日誌寫入統一日誌。每分鐘對 localhost 運行輕量 promtool check metrics curl,可在 CI 之前捕獲 exposition 迴歸。
<key>StartInterval</key>
<integer>60</integer>
保持 Agent 非特權;永遠不要把 bearer token 寫進 plist——通過帶相應權利的小助手從 macOS 鑰匙串讀取。
若同一主機並行跑多個網關版本(藍綠),為每個版本分配獨立 metrics 端口並在 plist 中用標籤區分,避免抓取器誤把 canary 與 stable 混寫入同一 job。
雲 Mac 排演與一致性測試
雲 Mac mini 能復現 Apple 調度器、文件系統大小寫默認與 TLS 棧怪癖。鏡像生產抓取配置但縮短保留期,然後對網關施壓並觀察 TSDB 壓縮滯後。以約 $16.9/天 的成本,你可以承擔在共享預發集群上顯得“粗魯”的多日浸泡測試。
排演腳本應包含:拔插網線模擬、切換 DNS、以及人為延遲供應商響應,以驗證直方圖桶是否仍能提供可行動信號。
安全:鑑權、TLS 與管理面隔離
指標端點會洩露運行細節:隊列名、依賴版本、斷路器狀態。用網絡策略、SSH 隧道或零信任網格保護。若必須並排暴露 JSON 調試與 Prometheus 文本,確保 content-type 永不衝突,並防止 DNS 切換時管理端口意外對公網開放而被爬蟲抓取。
對合規行業,審計日誌應記錄誰訪問了 metrics URL,而不僅是業務 API。
SLO 接線:燃盡率與記錄規則
在網關延遲與錯誤佔比上定義 SLI,然後映射多窗口燃盡告警。記錄規則應預計算五分鐘與一小時速率以保持面板敏捷。用歷史事故校驗閾值,而非拍腦袋,並在 runbook 中把指標面板鏈接到按請求 ID 過濾的日誌查詢。
若 SLO 同時覆蓋人類客服時段與夜間批處理,考慮拆分 burn 規則,避免夜間合法尖峰淹沒白天交互體驗。
矩陣:導出什麼、丟棄什麼
| 信號 | 導出? | 備註 |
|---|---|---|
| 每次請求 UUID | 否 | 寫入脫敏日誌。 |
| 隊列深度 gauge | 是 | 背壓可見性關鍵。 |
| 供應商 429 計數 | 是 | 有界標籤;與 Retry-After 關聯。 |
| 堆採樣 | 否 | pprof 走獨立鑑權端點。 |
編號上線清單
- 清點現有指標,刪除超出預算基數的時間序列。
- 將直方圖桶與 SLO 閾值對齊並文檔化邊界。
- 編寫抓取配置:TLS、ACL、relabel 剝離環境密鑰。
- 測試排空行為,確保終止的 Pod 在抓取恢復前從 SD 消失。
- 在雲 Mac 上對合成負載同時驗證探針與指標。
- 交付帶發佈窗口註釋的 Grafana 面板。
- 在 macOS 主機跑 LaunchAgent 金絲雀,儘早發現 exposition 漂移。
- 審查保留策略:本地排演 Prometheus 需要激進降採樣。
常見問題
是否應在網關主機上運行 Prometheus?
通常否——遠程抓取進集中 TSDB,以縮小爆炸半徑。
OpenTelemetry 呢?
OTLP 與 Prometheus 互補;對以 PromQL 標準化的團隊可轉換 exposition。
如何在 CI 測試基數迴歸?
在集成測試後快照序列計數,新標籤未經評審即失敗構建。
可靠指標與可用性檢查、結構化日誌同屬可靠性計劃。在 MacHTML 租用的專用 Mac mini(約 $16.9/天)上排演抓取路徑,可在進入生產 Prometheus 之前捕獲 TLS、網絡與時序問題。
在雲 Mac mini 上排演 OpenClaw 網關指標
鏡像生產抓取配置、剖析 TSDB 基數,並在真實 macOS 硬件上驗證 LaunchAgent 定時器,然後再合併可觀測性改動。