診斷包
遇到問題時,在 設定 → 診斷 中匯出診斷包,附在 GitHub issue 裡,維護者就能直接找出原因,不必再向你索取截圖和日誌。
診斷包在你自己的機器上產生,不會上傳到任何地方。下載前點擊 預覽內容,可以看到將要匯出的全部檔案;zip 內只有純文字和 JSON,解壓縮後也能逐一檢查。
會匯出什麼
| 檔案 | 內容 |
|---|---|
README.txt | 診斷包說明(中英對照) |
summary.json | Gately 版本與建置資訊、系統與架構、CPU 型號與核心數、記憶體與磁碟容量、執行時間、Go 執行階段統計、管理介面連接埠、網路介面名稱及其位址類別(如 private: 1, public: 2) |
modules.json | 模組清單與總覽頁的狀態摘要 |
config/*.json | 設定的結構:欄位名稱、數字、開關,以及協定、模式等列舉值 |
logs/*.log | 系統與各模組最近的執行日誌,包括重新啟動前已落盤的部分(可在匯出時關閉) |
絕不會匯出什麼
- 密碼、密碼雜湊、API 權杖、兩步驟驗證金鑰、工作階段金鑰、OAuth 金鑰、DNS 服務商金鑰、SSH 密碼與私鑰、憑證與私鑰。
account.json與tokens.json不會被讀取。 - 網域、主機名稱、真實 IP 與 MAC 位址,統一替換為
<domain>、<ipv4:private>、<ipv4:public>、<mac>等預留位置,連接埠予以保留。 - 設定目錄與使用者家目錄的路徑(替換為
<config-dir>、<home>)。 - 你在設定裡填寫的名稱、備註等文字:凡不是已知列舉值的字串,一律替換為
<redacted>。 - 檔案內容、Docker 容器 / 映像檔 / 環境變數、終端機工作階段與流量內容。
遮蔽方式
- 設定:預設移除所有取值,只保留欄位名稱、數字、開關、固定的列舉欄位(
protocol、mode、provider等)與時間戳記。位址類欄位只保留連接埠和 IP 類別。 - 日誌:替換 IP、網域、電子郵件、URL、
password=…形式的鍵值、Bearer權杖、疑似金鑰的長字串、MAC 位址與使用者目錄。github.com、letsencrypt.org等公共服務網域予以保留,用來判斷故障是否為網路問題。 - 你自行填寫的名稱(如規則備註)若出現在日誌裡,且不像 IP 或網域,仍可能留在日誌行中。發布前請快速瀏覽
logs/*.log,刪掉不想公開的內容。
介面
GET /api/system/diagnostics,僅登入工作階段可用,API 權杖無權存取。?logs=0 不含日誌,?preview=1 以 JSON 回傳各檔案內容。