]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/root-helpers/logger.ts
Translated using Weblate (Russian)
[github/Chocobozzz/PeerTube.git] / client / src / root-helpers / logger.ts
index cd559cfa7c2f456391621c1bd15e6875cc06479a..618be62cdd3e5a5eb54b502c61d395899029842c 100644 (file)
@@ -1,6 +1,6 @@
 import { ClientLogCreate } from '@shared/models/server'
 import { peertubeLocalStorage } from './peertube-web-storage'
-import { UserTokens } from './users'
+import { OAuthUserTokens } from './users'
 
 export type LoggerHook = (message: LoggerMessage, meta?: LoggerMeta) => void
 export type LoggerLevel = 'info' | 'warn' | 'error'
@@ -27,6 +27,10 @@ class Logger {
   warn (message: LoggerMessage, meta?: LoggerMeta) {
     this.runHooks('warn', message, meta)
 
+    this.clientWarn(message, meta)
+  }
+
+  clientWarn (message: LoggerMessage, meta?: LoggerMeta) {
     if (meta) console.warn(message, meta)
     else console.warn(message)
   }
@@ -34,6 +38,10 @@ class Logger {
   error (message: LoggerMessage, meta?: LoggerMeta) {
     this.runHooks('error', message, meta)
 
+    this.clientError(message, meta)
+  }
+
+  clientError (message: LoggerMessage, meta?: LoggerMeta) {
     if (meta) console.error(message, meta)
     else console.error(message)
   }
@@ -56,7 +64,7 @@ class Logger {
     })
 
     try {
-      const tokens = UserTokens.getUserTokens(peertubeLocalStorage)
+      const tokens = OAuthUserTokens.getUserTokens(peertubeLocalStorage)
 
       if (tokens) headers.set('Authorization', `${tokens.tokenType} ${tokens.accessToken}`)
     } catch (err) {
@@ -95,9 +103,9 @@ class Logger {
   }
 
   private buildStackServerLogPayload (message: LoggerMessage, meta?: LoggerMeta) {
-    if (message instanceof Error) return message.stack
-    if (meta instanceof Error) return meta.stack
-    if (meta?.err instanceof Error) return meta.err.stack
+    if (message instanceof Error) return this.buildStack(message)
+    if (meta instanceof Error) return this.buildStack(meta)
+    if (meta?.err instanceof Error) return this.buildStack(meta.err)
 
     return undefined
   }
@@ -128,6 +136,10 @@ class Logger {
       hookObj.hook(message, meta)
     }
   }
+
+  private buildStack (err: Error) {
+    return `${err.message}\n${err.stack || ''}`
+  }
 }
 
 const logger = window.logger || new Logger()