Logger: improving the logger, and using it in client code.

This commit is contained in:
John Livingston
2024-06-14 15:17:14 +02:00
parent d931a9c144
commit 2739bb823a
9 changed files with 29 additions and 19 deletions

View File

@ -3,19 +3,27 @@
// SPDX-License-Identifier: AGPL-3.0-only
interface Logger {
log: (s: string) => void
info: (s: string) => void
error: (s: string) => void
warn: (s: string) => void
log: (s: any) => void
info: (s: any) => void
error: (s: any) => void
warn: (s: any) => void
createLogger: (p: string) => Logger
}
function createLogger (prefix: string): Logger {
return {
log: (s: string) => console.log('[' + prefix + '] ' + s),
info: (s: string) => console.info('[' + prefix + '] ' + s),
error: (s: string) => console.error('[' + prefix + '] ' + s),
warn: (s: string) => console.warn('[' + prefix + '] ' + s),
log: (s: any) => {
typeof s === 'string' ? console.log('[' + prefix + '] ' + s) : console.log('[' + prefix + ']', s)
},
info: (s: any) => {
typeof s === 'string' ? console.info('[' + prefix + '] ' + s) : console.info('[' + prefix + ']', s)
},
error: (s: any) => {
typeof s === 'string' ? console.error('[' + prefix + '] ' + s) : console.error('[' + prefix + ']', s)
},
warn: (s: any) => {
typeof s === 'string' ? console.warn('[' + prefix + '] ' + s) : console.warn('[' + prefix + ']', s)
},
createLogger: (p: string) => createLogger('peertube-plugin-livechat>' + p)
}
}