From 03a1e70fce73683290dad56f494e37cef0fda9b5 Mon Sep 17 00:00:00 2001 From: Book Pauk Date: Thu, 7 Jul 2022 19:05:54 +0700 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B8,=20=D1=87=D1=82=D0=BE=D0=B1=D1=8B=20=D0=BD=D0=B5=20?= =?UTF-8?q?=D0=BF=D0=B0=D0=B4=D0=B0=D0=BB=20=D0=B2=20=D1=81=D0=BB=D1=83?= =?UTF-8?q?=D1=87=D0=B0=D0=B5=20=D0=B4=D0=B5=D1=82=D0=B0=D1=87=D0=B0=20?= =?UTF-8?q?=D1=81=D0=BA=D1=80=D0=B8=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/core/Logger.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/server/core/Logger.js b/server/core/Logger.js index 2d83d56e..39337af5 100644 --- a/server/core/Logger.js +++ b/server/core/Logger.js @@ -49,7 +49,7 @@ class BaseLog { this.outputBuffer = []; await this.flushImpl(this.data) - .catch(e => { console.log(e); ayncExit.exit(1); } ); + .catch(e => { console.error(`Logger error: ${e}`); ayncExit.exit(1); } ); this.flushing = false; } @@ -164,8 +164,19 @@ class FileLog extends BaseLog { } class ConsoleLog extends BaseLog { + constructor(params) { + super(params); + + this.stdoutClosed = false; + process.stdout.on('close', () => { + this.stdoutClosed = true; + }); + } + async flushImpl(data) { - process.stdout.write(data.join('')); + if (!this.stdoutClosed) { + process.stdout.write(data.join('')); + } } } @@ -218,6 +229,8 @@ class Logger { } else { console.log(mes); } + + return mes; } async close() {