소스 검색

Улучшение AsyncExit

Book Pauk 2 년 전
부모
커밋
d5fe4f8eb4
1개의 변경된 파일6개의 추가작업 그리고 2개의 파일을 삭제
  1. 6 2
      server/core/AsyncExit.js

+ 6 - 2
server/core/AsyncExit.js

@@ -1,9 +1,9 @@
-let instance = null;
-
 const defaultTimeout = 15*1000;//15 sec
 const exitSignals = ['SIGINT', 'SIGTERM', 'SIGBREAK', 'SIGHUP', 'uncaughtException'];
 
 //singleton
+let instance = null;
+
 class AsyncExit {
     constructor(signals = exitSignals, codeOnSignal = 2) {
         if (!instance) {
@@ -22,6 +22,10 @@ class AsyncExit {
 
     _init(signals, codeOnSignal) {
         const runSingalCallbacks = async(signal, err, origin) => {
+            if (!this.onSignalCallbacks.size) {
+                console.error(`Uncaught signal "${signal}" received, error: "${(err.stack ? err.stack : err)}"`);
+            }
+
             for (const signalCallback of this.onSignalCallbacks.keys()) {
                 try {
                     await signalCallback(signal, err, origin);