feat: 统一日志系统——结构化滚动文件 + api.log 插件通道 + 73 个 IPC 通道追踪 + pi 事件/渲染层错误归档
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
/**
|
||||
* 渲染层全局错误采集:window.onerror / unhandledrejection / 未处理的 React 边界外错误
|
||||
* 统一走 console.error,由宿主 console-message 桥归档进日志文件(main/index.ts)。
|
||||
* Agent 自诊断依赖:任何渲染层异常都必须能在 userData/logs/ 里看到。
|
||||
*/
|
||||
window.addEventListener('error', (e) => {
|
||||
// 资源加载失败(img/script)没有 error 对象,也一并记录
|
||||
const detail = e.error instanceof Error ? `${e.error.stack ?? e.error.message}` : `${e.message} @ ${e.filename}:${e.lineno}:${e.colno}`
|
||||
console.error(`[window.onerror] ${detail}`)
|
||||
})
|
||||
|
||||
window.addEventListener('unhandledrejection', (e) => {
|
||||
const reason = e.reason instanceof Error ? (e.reason.stack ?? e.reason.message) : String(e.reason)
|
||||
console.error(`[unhandledrejection] ${reason}`)
|
||||
})
|
||||
@@ -2,6 +2,7 @@ import React from 'react'
|
||||
import ReactDOM from 'react-dom/client'
|
||||
import App from './App'
|
||||
import './styles/globals.css'
|
||||
import './lib/error-report'
|
||||
|
||||
ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render(
|
||||
<React.StrictMode>
|
||||
|
||||
Reference in New Issue
Block a user