optimize: 捕获应用启动过程中的异常,并记录日志。
parent
2a7550368b
commit
6d57101b2f
|
@ -173,7 +173,7 @@ const configApi = {
|
|||
log.info('读取远程配置文件内容成功:', path)
|
||||
return file.toString()
|
||||
} else {
|
||||
log.warn('远程配置文件不存在:', path)
|
||||
log.info('远程配置文件不存在:', path)
|
||||
}
|
||||
} catch (e) {
|
||||
log.error('读取远程配置文件内容失败:', e)
|
||||
|
|
|
@ -30,7 +30,13 @@ let winIsHidden = false
|
|||
|
||||
let tray // 防止被内存清理
|
||||
let forceClose = false
|
||||
DevSidecar.api.config.reload()
|
||||
|
||||
try {
|
||||
DevSidecar.api.config.reload()
|
||||
} catch (e) {
|
||||
log.error('配置加载失败:', e)
|
||||
}
|
||||
|
||||
let hideDockWhenWinClose = DevSidecar.api.config.get().app.dock.hideWhenWinClose || false
|
||||
// Scheme must be registered before the app is ready
|
||||
protocol.registerSchemesAsPrivileged([
|
||||
|
@ -362,13 +368,14 @@ function initApp () {
|
|||
}
|
||||
|
||||
// -------------执行开始---------------
|
||||
app.disableHardwareAcceleration() // 禁用gpu
|
||||
try {
|
||||
app.disableHardwareAcceleration() // 禁用gpu
|
||||
|
||||
// 开启后是否默认隐藏window
|
||||
let startHideWindow = !DevSidecar.api.config.get().app.startShowWindow
|
||||
if (app.getLoginItemSettings().wasOpenedAsHidden) {
|
||||
// 开启后是否默认隐藏window
|
||||
let startHideWindow = !DevSidecar.api.config.get().app.startShowWindow
|
||||
if (app.getLoginItemSettings().wasOpenedAsHidden) {
|
||||
startHideWindow = true
|
||||
} else if (process.argv) {
|
||||
} else if (process.argv) {
|
||||
const args = minimist(process.argv)
|
||||
log.info('start args:', args)
|
||||
|
||||
|
@ -379,17 +386,17 @@ if (app.getLoginItemSettings().wasOpenedAsHidden) {
|
|||
} else if (hideWindowArg === 'false' || hideWindowArg === '0') {
|
||||
startHideWindow = false
|
||||
}
|
||||
}
|
||||
log.info('startHideWindow = ', startHideWindow, ', app.getLoginItemSettings() = ', jsonApi.stringify2(app.getLoginItemSettings()))
|
||||
}
|
||||
log.info('startHideWindow = ', startHideWindow, ', app.getLoginItemSettings() = ', jsonApi.stringify2(app.getLoginItemSettings()))
|
||||
|
||||
// 禁止双开
|
||||
const isFirstInstance = app.requestSingleInstanceLock()
|
||||
if (!isFirstInstance) {
|
||||
// 禁止双开
|
||||
const isFirstInstance = app.requestSingleInstanceLock()
|
||||
if (!isFirstInstance) {
|
||||
log.info('is second instance')
|
||||
setTimeout(() => {
|
||||
app.quit()
|
||||
}, 1000)
|
||||
} else {
|
||||
} else {
|
||||
app.on('before-quit', async () => {
|
||||
log.info('before-quit')
|
||||
if (process.platform === 'darwin') {
|
||||
|
@ -442,19 +449,25 @@ if (!isFirstInstance) {
|
|||
// log.error('Vue Devtools failed to install:', e.toString())
|
||||
// }
|
||||
}
|
||||
|
||||
try {
|
||||
createWindow(startHideWindow)
|
||||
} catch (err) {
|
||||
log.error('createWindow error:', err)
|
||||
}
|
||||
|
||||
try {
|
||||
const context = { win, app, beforeQuit, quit, ipcMain, dialog, log, api: DevSidecar.api, changeAppConfig }
|
||||
backend.install(context) // 模块安装
|
||||
} catch (err) {
|
||||
log.info('error:', err)
|
||||
log.error('install modules error:', err)
|
||||
}
|
||||
|
||||
try {
|
||||
// 最小化到托盘
|
||||
tray = setTray()
|
||||
} catch (err) {
|
||||
log.info('error:', err)
|
||||
log.error('setTray error:', err)
|
||||
}
|
||||
|
||||
_powerMonitor.on('shutdown', async (e) => {
|
||||
|
@ -465,12 +478,12 @@ if (!isFirstInstance) {
|
|||
await quit()
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
initApp()
|
||||
initApp()
|
||||
|
||||
// Exit cleanly on request from parent process in development mode.
|
||||
if (isDevelopment) {
|
||||
// Exit cleanly on request from parent process in development mode.
|
||||
if (isDevelopment) {
|
||||
if (process.platform === 'win32') {
|
||||
process.on('message', (data) => {
|
||||
if (data === 'graceful-exit') {
|
||||
|
@ -482,9 +495,12 @@ if (isDevelopment) {
|
|||
quit()
|
||||
})
|
||||
}
|
||||
}
|
||||
// 系统关机和重启时的操作
|
||||
process.on('exit', () => {
|
||||
}
|
||||
// 系统关机和重启时的操作
|
||||
process.on('exit', () => {
|
||||
log.info('进程结束,退出app')
|
||||
quit()
|
||||
})
|
||||
})
|
||||
} catch (e) {
|
||||
log.error('应用启动过程中,出现未知异常:', e)
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ const api = {
|
|||
}
|
||||
})
|
||||
newServer.on('error', (e) => {
|
||||
log.info('server error', e)
|
||||
log.error('server error', e)
|
||||
// newServer = null
|
||||
fireError(e)
|
||||
})
|
||||
|
|
|
@ -23,7 +23,7 @@ module.exports = class DNSOverIpAddress extends BaseDNS {
|
|||
log.info(`[dns] get ${hostname} ipaddress:${ip}`)
|
||||
return [ip]
|
||||
}
|
||||
log.info(`[dns] get ${hostname} ipaddress: error`)
|
||||
log.warn(`[dns] get ${hostname} ipaddress: error`)
|
||||
return null
|
||||
|
||||
// const { answers } = await dnstls.query(hostname)
|
||||
|
|
|
@ -175,7 +175,7 @@ module.exports = {
|
|||
next() // 异步执行完继续next
|
||||
}
|
||||
}).catch((err) => {
|
||||
log.info('baiduOcr error:', err)
|
||||
log.error('baiduOcr error:', err)
|
||||
res.writeHead(200, headers)
|
||||
res.write(`{"error_code": 999500, "error_msg": "${err}"}`) // 格式如:{"words_result":[{"words":"6525"}],"words_result_num":1,"log_id":1818877093747960000}
|
||||
res.end()
|
||||
|
|
Loading…
Reference in New Issue