Fixed some error logging

This commit is contained in:
Geomitron
2021-04-24 14:17:58 -05:00
parent cfafbf24ff
commit 81e9249817
6 changed files with 34 additions and 15 deletions

33
package-lock.json generated
View File

@@ -6,7 +6,7 @@
"packages": {
"": {
"name": "bridge",
"version": "1.3.1",
"version": "1.4.1",
"license": "GPL-3.0",
"dependencies": {
"@angular/animations": "~11.1.1",
@@ -36,6 +36,7 @@
"rimraf": "^3.0.2",
"rxjs": "~6.5.5",
"sanitize-filename": "^1.6.3",
"serialize-error": "^7.0.1",
"tslib": "^2.0.0",
"underscore": "^1.9.2",
"zone.js": "~0.10.2"
@@ -54,6 +55,7 @@
"@types/node": "^14.14.37",
"@types/randombytes": "^2.0.0",
"@types/rimraf": "^3.0.0",
"@types/serialize-error": "^4.0.1",
"@types/underscore": "^1.9.4",
"@typescript-eslint/eslint-plugin": "^2.19.2",
"@typescript-eslint/parser": "^2.19.2",
@@ -3204,6 +3206,16 @@
"@types/node": "*"
}
},
"node_modules/@types/serialize-error": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@types/serialize-error/-/serialize-error-4.0.1.tgz",
"integrity": "sha512-hb75EHpnDajMUIskN1q6kNgciFQ81NP8wnowIF3kDd/Mcux7fNXCZiJJ/jQXtBQ6T1gEZ7Jk2LSayzbNPLHDtg==",
"deprecated": "This is a stub types definition. serialize-error provides its own type definitions, so you do not need this installed.",
"dev": true,
"dependencies": {
"serialize-error": "*"
}
},
"node_modules/@types/source-list-map": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz",
@@ -20722,8 +20734,6 @@
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz",
"integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==",
"dev": true,
"optional": true,
"dependencies": {
"type-fest": "^0.13.1"
},
@@ -20735,8 +20745,6 @@
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
"integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
"dev": true,
"optional": true,
"engines": {
"node": ">=10"
}
@@ -27733,6 +27741,15 @@
"@types/node": "*"
}
},
"@types/serialize-error": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@types/serialize-error/-/serialize-error-4.0.1.tgz",
"integrity": "sha512-hb75EHpnDajMUIskN1q6kNgciFQ81NP8wnowIF3kDd/Mcux7fNXCZiJJ/jQXtBQ6T1gEZ7Jk2LSayzbNPLHDtg==",
"dev": true,
"requires": {
"serialize-error": "*"
}
},
"@types/source-list-map": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz",
@@ -42218,8 +42235,6 @@
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz",
"integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==",
"dev": true,
"optional": true,
"requires": {
"type-fest": "^0.13.1"
},
@@ -42227,9 +42242,7 @@
"type-fest": {
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
"integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
"dev": true,
"optional": true
"integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg=="
}
}
},

View File

@@ -53,6 +53,7 @@
"rimraf": "^3.0.2",
"rxjs": "~6.5.5",
"sanitize-filename": "^1.6.3",
"serialize-error": "^7.0.1",
"tslib": "^2.0.0",
"underscore": "^1.9.2",
"zone.js": "~0.10.2"
@@ -71,6 +72,7 @@
"@types/node": "^14.14.37",
"@types/randombytes": "^2.0.0",
"@types/rimraf": "^3.0.0",
"@types/serialize-error": "^4.0.1",
"@types/underscore": "^1.9.4",
"@typescript-eslint/eslint-plugin": "^2.19.2",
"@typescript-eslint/parser": "^2.19.2",

View File

@@ -5,6 +5,7 @@ import { Dirent, readdir as _readdir } from 'fs'
import { promisify } from 'util'
import { join } from 'path'
import { devLog } from '../shared/ElectronUtilFunctions'
import { serializeError } from 'serialize-error'
const readdir = promisify(_readdir)
const rimraf = promisify(_rimraf)
@@ -32,7 +33,7 @@ class ClearCacheHandler implements IPCInvokeHandler<'clear-cache'> {
devLog(`Deleting ${file.isFile() ? 'file' : 'folder'}: ${join(tempPath, file.name)}`)
await rimraf(join(tempPath, file.name))
} catch (err) {
devLog(`Failed to delete ${file.isFile() ? 'file' : 'folder'}: `, err)
devLog(`Failed to delete ${file.isFile() ? 'file' : 'folder'}: `, serializeError(err))
return
}
}

View File

@@ -12,6 +12,7 @@ import Bottleneck from 'bottleneck'
import { promisify } from 'util'
import { join } from 'path'
import { tempPath } from '../../shared/Paths'
import { serializeError } from 'serialize-error'
const drive = google.drive('v3')
const limiter = new Bottleneck({
minTime: 200 // Wait 200 ms between API requests
@@ -120,7 +121,7 @@ class APIFileDownloader {
if (this.wasCanceled) { return }
this.startDownloadStream()
} else {
devLog(err)
devLog(serializeError(err))
if (err?.code && err?.response?.statusText) {
this.failDownload(downloadErrors.responseError(`${err.code} (${err.response.statusText})`))
} else {

View File

@@ -14,6 +14,7 @@ import { serverURL } from '../../shared/Paths'
import * as fs from 'fs'
import { promisify } from 'util'
import { devLog } from '../../shared/ElectronUtilFunctions'
import { serializeError } from 'serialize-error'
const unlink = promisify(fs.unlink)
@@ -100,7 +101,7 @@ export class GoogleAuth {
authServer.on('authCode', async (authCode) => {
this.token = (await this.oAuth2Client.getToken(authCode)).tokens
writeFile(TOKEN_PATH, this.token).catch(err => devLog('Got token, but failed to write it to TOKEN_PATH:', err))
writeFile(TOKEN_PATH, this.token).catch(err => devLog('Got token, but failed to write it to TOKEN_PATH:', serializeError(err)))
this.authenticateWithToken()
@@ -134,7 +135,7 @@ export class GoogleAuth {
'get',
serverURL + `/api/data/client`, null, (err, response) => {
if (err) {
devLog('Could not authenticate because client info could not be retrieved from the server:', err)
devLog('Could not authenticate because client info could not be retrieved from the server:', serializeError(err))
resolve(false)
} else {
this.oAuth2Client = new google.auth.OAuth2(response.body.CLIENT_ID, response.body.CLIENT_SECRET, REDIRECT_URI)
@@ -180,7 +181,7 @@ export class GoogleAuth {
try {
await unlink(TOKEN_PATH)
} catch (err) {
devLog('Failed to delete token:', err)
devLog('Failed to delete token:', serializeError(err))
return
}
}

View File

@@ -20,6 +20,7 @@ export function hasVideoExtension(name: string) {
/**
* Log a message in the main BrowserWindow's console.
* Note: Error objects can't be serialized by this; use serializeError(err) before passing it here.
*/
export function devLog(...messages: any[]) {
emitIPCEvent('log', messages)