feat: 全量日志接入 + 日志服务重构(非阻塞)
log-service 重构: - DOM 渲染改用 requestAnimationFrame 批量队列 - 全程 try-catch,任何异常都不阻塞主流程 - 新增 logConnection/logModel/logSession/logMemory/logRAG/logSetting/logIPC/logInit 便捷方法 全量接入(12 个文件): - header.ts: 连接状态变化(connected/disconnected/error) - model-bar.ts: 模型列表加载、模型切换、能力检测结果 - settings-modal.ts: 所有设置变更(系统提示词/上下文/温度/工具调用/命令执行/记忆)、显存释放、导出/导入 - tool-confirm-modal.ts: 工具确认弹窗、确认/取消操作 - memory-manager.ts: 记忆初始化、新增/删除、自动提取 - tool-registry.ts: 工具执行异常 - rag.ts: 文档分块、向量检索 - kb-modal.ts: 知识库创建、文档上传、批量上传 - history-modal.ts: 会话加载、会话删除 - main.ts: 应用初始化各阶段、桌面集成、菜单/托盘操作、新建会话 - input-area.ts: 消息发送、流式完成/错误、文件/图片添加、Agent Loop 错误
This commit is contained in:
@@ -11,6 +11,7 @@ import {
|
||||
import { fileToText, formatSize, escapeHtml, truncate } from '../utils/utils.js';
|
||||
import { showToast } from './toast.js';
|
||||
import { OllamaAPI } from '../api/ollama.js';
|
||||
import { logRAG, logError } from '../services/log-service.js';
|
||||
import type { VectorCollection, SearchResult } from '../types.js';
|
||||
|
||||
let kbModalEl: HTMLElement;
|
||||
@@ -209,6 +210,7 @@ async function createCollection(): Promise<void> {
|
||||
currentColId = col.id;
|
||||
nameInput.value = '';
|
||||
showToast(`知识库「${name}」已创建`, 'success');
|
||||
logRAG(`创建集合: ${name}`);
|
||||
await refreshCollections();
|
||||
await refreshDocList();
|
||||
}
|
||||
@@ -248,10 +250,12 @@ async function handleDocUpload(e: Event): Promise<void> {
|
||||
);
|
||||
|
||||
showToast(`${file.name} 已添加到知识库(${result.chunkCount} 个分块)`, 'success');
|
||||
logRAG(`文档上传: ${file.name}`, `${result.chunkCount} 个分块`);
|
||||
successCount++;
|
||||
} catch (err) {
|
||||
console.error('[KB] 文档处理失败:', err);
|
||||
showToast(`${file.name} 处理失败: ${(err as Error).message}`, 'error');
|
||||
logError(`RAG 文档处理失败: ${file.name}`, (err as Error).message);
|
||||
failCount++;
|
||||
}
|
||||
}
|
||||
@@ -260,6 +264,7 @@ async function handleDocUpload(e: Event): Promise<void> {
|
||||
|
||||
if (fileArr.length > 1) {
|
||||
showToast(`上传完成:成功 ${successCount} 个,失败 ${failCount} 个`, failCount > 0 ? 'warning' : 'success');
|
||||
logRAG(`批量上传完成`, `成功 ${successCount}, 失败 ${failCount}`);
|
||||
}
|
||||
|
||||
await refreshCollections();
|
||||
|
||||
Reference in New Issue
Block a user