痛點:為何要統一路徑與合併廣播
- 觀測斷裂:各網關若寫在不同父目錄,集中式採集與關聯查詢會失敗,排錯時難以對齊時間線。
- 磁碟尖峰:單檔暴長又未輪替時,寫入延遲會誤判為上游慢或佇列堵塞。
- 通知風暴:多節點各自對外 Webhook,同一建置會收到重複失敗摘要,干擾值勤判讀與審計。
原則:網關收斂出站、路徑單一真實來源;節點只回內部事件,對外經網關去重,才顯出多機編排池化價值;拓樸銜接見多節點部署指南。
決策矩陣:切片與輪替策略
| 作法 | 適用情境 | 共享池主要風險 |
|---|---|---|
| 單檔無限追加 | 短期除錯 | 單檔過大拖慢採集與搜尋 |
| 按大小加按日雙閾值輪替 | 正式網關與高併發 Webhook | 需校時與權限一致 |
| 每節點各自出站廣播 | 實驗室單租戶 | 重複訊息與速率上限衝突 |
可複現步驟(含運維三連擊)
一、路徑契約。變更單寫死根目錄與檔名樣式,各主機同樹;例外須評審,避免採集漏掃。
二、運維三連擊。先狀態看健康與版本;再日誌對入站與路由;最後醫師診斷對金樣,必要時併跑嚴格驗證,見網關驗證。
openclaw gateway status --json
openclaw gateway logs --since 15m --level info
openclaw gateway doctor --json
三、logrotate。並用單檔上限與每日輪替,保留份數對齊稽核;壓縮放離峰;磁碟水位與單檔告警分開,避免誤判網路。
/var/log/openclaw/gateway/*.log {
daily
rotate 14
maxsize 128M
compress
delaycompress
missingok
copytruncate
}
四、合併廣播。節點帶建置流水號與節點識別,網關冪等聚合後只送一則失敗摘要;欄位約定見多節點建置通知。
五、驗收。灰度比對各機狀態同版、醫師診斷全綠,抽樣數廣播次數再擴流。
多租戶路徑隔離要點
目錄以租戶識別碼為首層,下分網關與暫存;檔名含日期與節點代號;權限最小群組,服務帳號僅寫自家樹。
/var/log/openclaw/tenants/<tenant_id>/gateway-<mesh_node_id>.log
排障 FAQ
問:狀態健康但廣播慢?查日誌出站重試、佇列深度、速率限制;醫師診斷看外掛是否漂移。
問:輪替後找不到線索?對壓縮檔命名與採集索引週期;除錯期可暫降保留並註記還原點。
問:合併等待與漏併?用逾時加必要片段數;關鍵失敗可立即廣播,其餘聚合降噪。
可引用參數錨點
- 單檔上限:常取百萬位元組級表值為第一閥再調峰值。
- 保留份數:十四天對齊稽核較易驗收。
- 合併鍵:流水號加狀態轉折可去重廣播。
限流與工作階段上限併看負載,避免與重試共振。