From 2dce1ad9ac03076bf56dc60d71b65a54acbaea05 Mon Sep 17 00:00:00 2001 From: ztimson Date: Wed, 16 Oct 2024 20:32:41 -0400 Subject: [PATCH] Object logging with formatting --- package.json | 2 +- src/logger.ts | 12 ++---------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index a5f9064..f03a72a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ztimson/utils", - "version": "0.20.11", + "version": "0.20.12", "description": "Utility library", "author": "Zak Timson", "license": "MIT", diff --git a/src/logger.ts b/src/logger.ts index 93472ea..84951a1 100644 --- a/src/logger.ts +++ b/src/logger.ts @@ -65,17 +65,9 @@ export class Logger extends TypedEmitter { super(); } - private pad(text: any, length: number, char: string, end = false) { - const t = text.toString(); - const l = length - t.length; - if(l <= 0) return t; - const padding = Array(~~(l / char.length)).fill(char).join(''); - return !end ? padding + t : t + padding; - } - - private format(...text: any[]): string { + protected format(...text: any[]): string { const now = new Date(); - const timestamp = `${now.getFullYear()}-${now.getMonth() + 1}-${now.getDate()} ${this.pad(now.getHours().toString(), 2, '0')}:${this.pad(now.getMinutes().toString(), 2, '0')}:${this.pad(now.getSeconds().toString(), 2, '0')}.${this.pad(now.getMilliseconds().toString(), 3, '0', true)}`; + const timestamp = `${now.getFullYear()}-${now.getMonth() + 1}-${now.getDate()} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')}:${now.getSeconds().toString().padStart(2, '0')}.${now.getMilliseconds().toString().padEnd(3, '0')}`; return `${timestamp}${this.namespace ? ` [${this.namespace}]` : ''} ${text.map(t => typeof t == 'string' ? t : JSONSanitize(t, 2)).join(' ')}`; }