Skip to content

日誌系統 ​

Luker 內建了完整的日誌擷取和管理系統,涵蓋後端服務和前端瀏覽器兩個層面。當你遇到問題需要排查時,日誌系統能幫助你快速定位原因。

日誌系統是一個獨立的功能模組,不依賴 Luker 的其他功能(如 Memory Graph、CardApp 等),無需額外設定即可使用。

後端日誌 ​

Luker 的後端日誌系統會自動攔截伺服器端的所有主控台輸出,將日誌儲存在記憶體中供查看。

運作方式 ​

  • 自動攔截:服務啟動時,Luker 會自動攔截 console.log、console.warn、console.error 等輸出
  • 環形緩衝區:日誌儲存在固定大小的記憶體緩衝區中。當緩衝區滿時,最舊的日誌會被自動丟棄,確保不會佔用過多記憶體
  • 時間戳和級別:日誌條目均記錄精確的時間戳和日誌級別,方便按時間和嚴重程度篩選

查看和管理 ​

兩個日誌來源均位於使用者設定抽屜中:開啟抽屜後選擇日誌。來源選後端或前端,按起訖時間或筆數篩選,搜尋內容,並可複製或清空緩衝區。伺服端日誌對管理員可見,未啟用使用者帳戶的執行個體同樣可見。

診斷選單中的匯出除錯日誌會下載一個 JSON 包——前端日誌、效能標記、裝置與視口資訊、伺服端日誌,以及請求檢查器的緩衝區——回報問題時附上它最為便捷。

TIP

後端日誌僅儲存在記憶體中,服務重啟後會清空。如果你需要持久化的日誌記錄,建議將 Luker 的主控台輸出重新導向到檔案。

前端日誌管理器 ​

Luker 還在瀏覽器端內建了一個日誌管理器,用於擷取前端執行時的各種資訊。

Console 攔截 ​

前端日誌管理器會攔截瀏覽器的 console.trace、console.debug、console.log、console.info、console.warn、console.error 輸出,將其寫入記憶體緩衝區(最多保留 3000 條)。

全域錯誤擷取 ​

前端日誌管理器還會自動擷取瀏覽器中的未處理錯誤和 Promise 拒絕事件,確保這些容易被忽略的異常也能被記錄下來。

日誌可見性 ​

預設情況下,只有 error 級別的日誌會在瀏覽器主控台中顯示。如果你需要查看更詳細的除錯資訊,可以在診斷選單中開啟前端除錯日誌,此時所有級別的日誌均會輸出到瀏覽器主控台。

無論前端除錯日誌是否開啟,所有級別的主控台輸出均會被寫入記憶體緩衝區,可隨時匯出查看。

使用場景 ​

除錯問題 ​

當 Luker 出現異常行為時,日誌系統是最直接的排查工具:

  • API 連線失敗 — 查看後端日誌中的錯誤資訊,確認 API 位址和金鑰是否正確
  • 生成中斷 — 查看前端日誌中的錯誤資訊,或開啟請求檢查器查看請求生命週期
  • 擴充功能報錯 — 前端日誌會擷取擴充功能執行時的錯誤,幫助定位問題擴充功能

回報問題 ​

如果你需要向開發者回報問題,請使用使用者設定診斷選單中的匯出除錯日誌:它會將日誌快照與問題發生前後的完整上下文打包,比單純的截圖更有助於問題定位。

WARNING

日誌與請求檢查器記錄可能包含敏感內容(如 API 金鑰),分享前請檢查。

相關頁面 ​

基於 SillyTavern 建構