日誌管理
日誌管理頁面用於檢視、篩選和管理系統執行日誌。支援按服務、級別、日期篩選日誌檔案,並提供檢視、清理、刪除等操作。
1. 進入日誌管理
1.1 開啟日誌管理頁面

點選頂部下拉選單選單中的"日誌管理",進入日誌管理頁面。

2. 篩選日誌
2.1 按專案篩選
在"專案"下拉框中選擇要檢視的服務。

支援的服務:
- 後端 API 服務 (web-api): Web API 服務日誌
- 大模型路由服務 (llm-router): LLM 路由服務日誌
- RAG 知識庫服務 (rag-service): 向量知識庫服務日誌
- 桌面客戶端 (desktop-client): Electron 桌面應用日誌
篩選說明:
- 選擇"全部"顯示所有服務的日誌
- 選擇具體服務只顯示該服務的日誌
- 切換服務後自動重置到第 1 頁
使用場景:
- 排查特定服務的問題
- 檢視某個服務的執行狀態
- 分析服務之間的呼叫關係
2.2 按級別篩選
在"級別"下拉框中選擇要檢視的日誌級別。
支援的級別:
- DEBUG: 除錯資訊,詳細的程式執行過程
- INFO: 常規資訊,正常的業務流程記錄
- WARN: 警告資訊,可能存在的問題但不影響執行
- ERROR: 錯誤資訊,程式異常和錯誤
篩選說明:
- 選擇"全部"顯示所有級別的日誌
- 選擇具體級別只顯示該級別的日誌
- 級別使用不同顏色標籤顯示:
- DEBUG: 灰色
- INFO: 藍色
- WARN: 黃色
- ERROR: 紅色
使用場景:
- 檢視 ERROR 日誌快速定位錯誤
- 檢視 WARN 日誌發現潛在問題
- 檢視 INFO 日誌瞭解業務流程
- 檢視 DEBUG 日誌進行詳細除錯
2.3 按日期篩選
點選"日期"選擇器,選擇要檢視的日誌日期。
日期選擇:
- 點選日期輸入框開啟日曆選擇器
- 選擇具體日期只顯示該日期的日誌
- 清空日期顯示所有日期的日誌
使用場景:
- 檢視特定日期的系統執行情況
- 回溯歷史問題發生的時間點
- 分析系統在某個時間段的表現
2.4 組合篩選
可以同時使用專案、級別、日期三個篩選條件進行組合篩選。
組合示例:
- 專案: web-api + 級別: ERROR → 檢視 Web API 服務的所有錯誤日誌
- 專案: llm-router + 日期: 2026-01-15 → 檢視 LLM 路由服務在 2026-01-15 的所有日誌
- 級別: WARN + 日期: 2026-01-15 → 檢視所有服務在 2026-01-15 的警告日誌
- 專案: rag-service + 級別: ERROR + 日期: 2026-01-15 → 精確定位特定服務、特定日期的錯誤日誌
3. 日誌列表
3.1 列表欄位說明
日誌列表以表格形式展示,包含以下欄位:

序號:
- 當前頁中的序號
- 自動計算,從 1 開始遞增
名稱:
- 服務的中文名稱
- 便於快速識別服務
專案:
- 服務的英文識別符號
- 用於技術排查和日誌定位
級別:
- 日誌級別標籤
- 帶圖示和顏色,方便快速識別
- DEBUG (灰色), INFO (藍色), WARN (黃色), ERROR (紅色)
日期:
- 日誌檔案的日期
- 格式: YYYY-MM-DD (例如 2026-01-15)
大小:
- 日誌檔案大小
- 單位: KB
- 顯示一位小數 (例如 125.6 KB)
操作:
- 檢視按鈕 (藍色): 開啟日誌檢視器,檢視完整日誌內容
- 清理按鈕 (黃色): 清空日誌檔案內容,但不刪除檔案
- 刪除按鈕 (紅色): 完全刪除日誌檔案
3.2 分頁功能
分頁控制:
- 底部顯示總記錄數 (例如"共 45 條")
- 支援切換每頁顯示數量: 10/20/50/100
- 支援翻頁,自動計算總頁數
- 切換每頁數量後自動重置到第 1 頁
使用場景:
- 日誌較多時,使用分頁瀏覽
- 調整每頁數量,快速瀏覽大量日誌
- 透過頁碼跳轉到指定頁面
4. 檢視日誌
4.1 開啟日誌檢視器
點選日誌列表中的"檢視"按鈕,開啟日誌檢視器側拉彈框。
檢視器特性:
- 右側側拉彈框,佔螢幕寬度 85%
- 顯示日誌檔案的完整內容
- 支援滾動檢視長日誌
- 顯示日誌級別、服務名稱、日期、總行數

4.2 日誌檢視器介面
頂部標題區域:
- 服務圖示和中文名稱
- 日誌級別標籤 (不同顏色)
- 日期顯示
- 總行數統計 (例如"123 行日誌")
工具欄:
- 全選覈取方塊: 選擇/取消選擇所有日誌行
- 已選擇數量顯示 (例如"已選擇 5 行")
- "複製選中"按鈕: 複製選中的日誌行到剪貼簿
- "複製全部"按鈕: 複製所有日誌內容到剪貼簿
日誌內容區域:
- 每行日誌顯示為獨立卡片
- 左側覈取方塊用於選擇該行
- 行號顯示 (從 1 開始)
- 日誌內容顯示:
- JSON 格式日誌使用等寬字型和語法高亮
- 普通文字日誌使用正常字型
- 滑鼠懸停顯示選擇提示
- 點選日誌行切換選擇狀態
4.3 選擇和複製日誌
單行選擇:
- 點選日誌行的覈取方塊或整行
- 選中的行顯示藍色高亮背景
- 再次點選取消選擇
多行選擇:
- 依次點選多個日誌行
- 所有選中的行顯示藍色高亮背景
- 工具欄顯示已選擇的數量
全選操作:
- 點選工具欄的"全選"覈取方塊
- 所有日誌行被選中
- 再次點選取消全選
複製選中內容:
- 選擇一行或多行日誌
- 點選"複製選中"按鈕
- 選中的日誌內容複製到剪貼簿
- 顯示成功提示 (例如"已複製 5 行日誌到剪貼簿")
複製全部內容:
- 點選"複製全部"按鈕
- 所有日誌內容複製到剪貼簿
- 顯示成功提示 "已複製全部日誌到剪貼簿"
使用場景:
- 選擇關鍵日誌行復制到問題報告
- 複製錯誤堆疊資訊傳送給技術支援
- 匯出特定日誌片段用於分析
- 複製全部日誌內容進行本地分析
4.4 關閉日誌檢視器
點選右上角"×"按鈕或按 ESC 鍵關閉日誌檢視器。
5. 清理日誌
5.1 清理單個日誌檔案
點選日誌列表中的"清理"按鈕,清空該日誌檔案的內容。
清理確認彈框:
- 顯示要清理的日誌檔案資訊:
- 服務名稱
- 日誌級別
- 日期
- 檔案大小
- 黃色警告提示: "清理後日志內容將無法恢復!"
- 兩個操作按鈕:
- "確認清理": 執行清理操作
- "取消": 放棄清理
清理結果:
- 清理成功顯示提示 "日誌清理成功"
- 日誌檔案內容被清空,但檔案本身保留
- 檔案大小變為 0 或接近 0 KB
- 列表自動重新整理,顯示更新後的檔案大小
使用場景:
- 日誌檔案過大,需要釋放儲存空間
- 清除已處理完的錯誤日誌
- 定期清理不再需要的歷史日誌
- 保留檔案結構,但清空內容
重要提示:
- 清理操作不可逆,請確認不需要該日誌內容後再操作
- 清理隻影響檔案內容,不刪除檔案本身
- 建議在排查完問題後再清理日誌

5.2 清理今日日誌
點選頂部"清理今日日誌"按鈕,批次清空所有今日產生的日誌檔案內容。
清理確認彈框:
- 黃色警告區域顯示清理範圍:
- 此操作將清理所有服務、所有級別的今日日誌內容
- 時間範圍: 從今日 00:00 到現在
- 僅清理日誌內容,不會刪除日誌檔案
- 清理後日志內容將無法恢復
- 建議在確認無重要日誌後再執行此操作
- 兩個操作按鈕:
- "確認清理": 執行批次清理
- "取消": 放棄清理
清理結果:
- 清理成功顯示提示 (例如"今日日誌清理成功,共清理 12 個日誌檔案")
- 所有今日日誌檔案內容被清空
- 列表自動重新整理,顯示更新後的狀態
使用場景:
- 每日工作結束後清理臨時日誌
- 測試完成後清理測試日誌
- 定期維護,釋放儲存空間
- 批次清理不再需要的當日日誌
重要提示:
- 此操作影響所有服務的今日日誌,請謹慎使用
- 清理前建議先檢視是否有重要日誌需要保留
- 如果只需要清理特定服務或級別的日誌,請使用單個檔案清理功能

6. 刪除日誌
6.1 刪除日誌檔案
點選日誌列表中的"刪除"按鈕,完全刪除該日誌檔案。
刪除確認彈框:
- 顯示要刪除的日誌檔案資訊:
- 服務名稱
- 日誌級別
- 日期
- 檔案大小
- 紅色危險提示:
- "刪除後日志檔案將完全消失,無法恢復!"
- "此操作比清理更加危險,請謹慎操作!"
- 兩個操作按鈕:
- "確認刪除" (紅色危險按鈕): 執行刪除操作
- "取消": 放棄刪除
刪除結果:
- 刪除成功顯示提示 "日誌檔案已刪除"
- 日誌檔案完全消失,無法恢復
- 列表自動重新整理,該日誌檔案不再顯示
清理 vs 刪除:
| 操作 | 檔案 | 內容 | 恢復 | 危險性 |
|---|---|---|---|---|
| 清理 | 保留 | 清空 | 不可恢復 | 中等 |
| 刪除 | 刪除 | 刪除 | 不可恢復 | 高 |
使用場景:
- 確認不再需要某個日誌檔案
- 徹底清理歷史日誌,釋放儲存空間
- 刪除包含敏感資訊的日誌檔案
- 歸檔後刪除本地日誌檔案
重要提示:
- 刪除操作不可逆,請務必確認不需要該日誌檔案
- 刪除比清理更加危險,請謹慎使用
- 建議先清理日誌內容,確認不影響後再刪除檔案
- 對於可能用於問題排查的日誌,建議匯出備份後再刪除

7. 重新整理日誌列表
7.1 手動重新整理
點選頂部"重新整理"按鈕,重新載入日誌列表和服務列表。
重新整理內容:
- 重新獲取服務列表
- 重新載入日誌檔案列表
- 更新檔案大小資訊
- 更新檔案修改時間
使用場景:
- 後臺生成了新的日誌檔案
- 執行清理或刪除操作後
- 確認其他操作的結果
- 定期重新整理檢視最新狀態

7.2 自動重新整理
觸發自動重新整理的操作:
- 清理單個日誌檔案後
- 刪除日誌檔案後
- 清理今日日誌後
- 切換篩選條件後 (專案/級別/日期)
- 切換分頁後
8. 日誌檔案儲存
8.1 日誌儲存位置
macOS 系統:
~/Library/Application Support/cuemate-desktop-client/data/logs/{service}/{date}/{level}.log路徑說明:
{service}: 服務名稱 (web-api/llm-router/rag-service/cuemate-asr/desktop-client){date}: 日期 (YYYY-MM-DD){level}.log: 日誌檔名 (debug.log/info.log/warn.log/error.log)
示例路徑:
~/Library/Application Support/cuemate-desktop-client/data/logs/web-api/2026-01-15/error.log8.2 日誌檔案格式
JSON 格式日誌:
{"level":"error","time":"2026-01-15T10:30:45.123Z","service":"web-api","message":"Database connection failed","stack":"..."}文字格式日誌:
[2026-01-15 10:30:45] ERROR: Database connection failed8.3 日誌滾動和歸檔
日誌滾動策略:
- 按日期分割日誌檔案
- 每天生成新的日誌檔案
- 舊日誌檔案自動歸檔
日誌保留時間:
- 預設保留 30 天
- 可在系統設定中調整
- 超過保留時間的日誌自動刪除
9. 最佳實踐
9.1 日常維護
建議操作:
- 每週檢查一次 ERROR 和 WARN 日誌
- 定期清理不需要的歷史日誌
- 保留最近 7-30 天的日誌用於問題排查
- 遇到問題時及時檢視日誌定位原因
9.2 問題排查流程
排查步驟:
- 確定問題發生的時間和相關服務
- 使用篩選條件定位到相關日誌檔案
- 開啟日誌檢視器檢視完整日誌內容
- 搜尋關鍵錯誤資訊或堆疊跟蹤
- 分析錯誤原因,制定解決方案
- 修復問題後驗證日誌是否恢復正常
排查技巧:
- 先檢視 ERROR 級別日誌
- 結合 WARN 級別日誌分析潛在問題
- 對比正常日誌和異常日誌
- 追蹤請求 ID 定位完整呼叫鏈
9.3 日誌清理策略
清理建議:
- 問題排查完成後清理相關日誌
- 每週清理一次 DEBUG 和 INFO 日誌
- 每月清理一次 WARN 日誌
- ERROR 日誌建議保留 30 天以上
- 清理前先匯出重要日誌內容
清理優先順序:
- 高優先順序: DEBUG 日誌 (佔用空間大,價值低)
- 中優先順序: INFO 和 WARN 日誌 (定期清理)
- 低優先順序: ERROR 日誌 (保留時間長)
9.4 日誌分析
分析維度:
- 錯誤頻率: 統計 ERROR 日誌的出現頻率
- 錯誤型別: 分類不同的錯誤資訊
- 服務健康: 對比各服務的日誌級別分佈
- 時間趨勢: 分析不同時間段的日誌變化
分析工具:
- 使用日誌檢視器的選擇和複製功能
- 匯出日誌到本地進行統計分析
- 使用篩選條件快速定位關鍵日誌
- 結合容器監控檢視服務狀態
10. 常見問題
10.1 日誌檔案過大
問題: 某個日誌檔案大小超過 100 MB,開啟很慢。
解決方案:
- 使用"清理"功能清空日誌內容
- 或者使用"刪除"功能刪除檔案
- 檢查是否有日誌輸出過於頻繁的問題
- 調整日誌級別,減少不必要的日誌輸出
10.2 找不到日誌檔案
問題: 篩選後列表為空,找不到想要的日誌檔案。
解決方案:
- 檢查日期選擇是否正確
- 嘗試清空所有篩選條件,檢視全部日誌
- 確認服務是否在該日期有日誌輸出
- 檢查日誌儲存目錄是否正常
10.3 日誌檢視器打不開
問題: 點選"檢視"按鈕,日誌檢視器沒有開啟或顯示空白。
解決方案:
- 檢查日誌檔案是否存在
- 檢查日誌檔案許可權是否正常
- 嘗試重新整理頁面後重新開啟
- 檢視瀏覽器控制檯是否有錯誤資訊
10.4 複製日誌失敗
問題: 點選"複製選中"或"複製全部"按鈕,提示覆制失敗。
解決方案:
- 檢查瀏覽器是否允許剪貼簿訪問
- 嘗試手動選擇日誌內容複製
- 確認選中的日誌行不為空
- 檢查瀏覽器許可權設定
