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 构建