Winston: EventEmitter-Speicherleck. v.2.0.0

Erstellt am 4. Nov. 2015  ·  3Kommentare  ·  Quelle: winstonjs/winston

Versuchen Sie v2.0.0. aber es tritt das selbe Problem auf.
Bitte um Überprüfung.

Ich verwende winston v1.0.2. Ich bin auf folgendes Fehlerprotokoll gestoßen.
Gibt es eine Lösung?

mein Verkehrsmittel

transports: [
  new winston.transports.Console({
    level:debug,
    colorize: 'true'
  }),
  new (winston.transports.DailyRotateFile)({
    datePattern: '.yyyy-MM-dd',
    filename: path.join(__dirname, '../logs/chat.error'),
    handleExceptions: true,
    prettyPrint: true,
    level: error,
    timestamp: 'true'
    //maxsize: 500000000 //byte
  })
]

Fehlerprotokoll

(node) warning: possible EventEmitter memory leak detected. 11 logged listeners added. Use emitter.setMaxListeners() to increase limit.
Trace
    at addListener (events.js:239:17)
    at once (events.js:265:8)
    at Transport.logException (c:\Users\Coupang\WebstormProjects\livechat-agent\node_modules\winston\lib\winston\transports\transport.js:132:8)
    at logAndWait (c:\Users\Coupang\WebstormProjects\livechat-agent\node_modules\winston\lib\winston\logger.js:646:15)
    at c:\Users\Coupang\WebstormProjects\livechat-agent\node_modules\async\lib\async.js:157:13
    at _each (c:\Users\Coupang\WebstormProjects\livechat-agent\node_modules\async\lib\async.js:57:9)
    at Object.async.each (c:\Users\Coupang\WebstormProjects\livechat-agent\node_modules\async\lib\async.js:156:9)
    at Logger._uncaughtException (c:\Users\Coupang\WebstormProjects\livechat-agent\node_modules\winston\lib\winston\logger.js:669:9)
    at emitOne (events.js:77:13)
    at process.emit (events.js:169:7)

Hilfreichster Kommentar

Nur zur Info, ich bin auch auf dieses Problem gestoßen. Es handelte sich um unhandle Exception Listener. Es gibt eine Methode, die Sie auf Ihrem Logger .exceptions.unhandle() aufrufen müssen, um die Listener zu entfernen. Dies sollte wirklich besser dokumentiert werden, oder wenn ja, konnte ich es nicht leicht finden. Ich habe den Code durchforstet, um diesen Aufruf zu finden (eigentlich habe ich einen veralteten Aufruf gefunden, der mich auf diesen verwies, obwohl der Text des Protokolls für die Ablehnung falsch geschrieben ist).

Alle 3 Kommentare

Bitte geben Sie den genauen Code an, den Sie gegen [email protected] ausführen. Es ist sehr verdächtig, dass das obige Codebeispiel genau das ist, was Sie ausführen, da _winston.transports.DailyRotateFile in 2.0.0_ nach winston-daily-rotate-file verschoben wurde.

Dies war ein bekanntes Problem im Zweig 1.x , das wir behoben haben. Bitte bestätigen Sie (mit einem vollständig reproduzierbaren Codebeispiel), dass Sie [email protected] verwenden.

Auch wenn dies immer noch auftritt, ist es wirklich kein großes Problem. Sie können einfach ausführen:

logger.setMaxListeners(0);

und das wird es definitiv beheben.

Also habe ich bithavoc/express-winston aktualisiert , um mit [email protected] zu arbeiten, und dieses Problem ist erneut aufgetreten. Ich weiß nicht, ob es eine gute Idee ist, das Maximum auf unendlich zu setzen, um dies zu umgehen

Nur zur Info, ich bin auch auf dieses Problem gestoßen. Es handelte sich um unhandle Exception Listener. Es gibt eine Methode, die Sie auf Ihrem Logger .exceptions.unhandle() aufrufen müssen, um die Listener zu entfernen. Dies sollte wirklich besser dokumentiert werden, oder wenn ja, konnte ich es nicht leicht finden. Ich habe den Code durchforstet, um diesen Aufruf zu finden (eigentlich habe ich einen veralteten Aufruf gefunden, der mich auf diesen verwies, obwohl der Text des Protokolls für die Ablehnung falsch geschrieben ist).

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen