Winston: Hinzufügen einer Logger-Instanz zu winston.loggers

Erstellt am 16. Apr. 2015  ·  3Kommentare  ·  Quelle: winstonjs/winston

Ich versuche, mehrere Logger zu erstellen, indem ich tue

winston.loggers.add('category1', {})

Ich dachte, neue Logger mit "new winston.Logger" zu erstellen und sie dann wie folgt hinzuzufügen:

myNewLogger = new winston.Logger({transport: [...]})
winston.loggers.add('category1', myNewLogger)

aber der Logger ändert die Transporte in ein Objekt statt in ein Array, was eine Ausnahme in . verursacht
container.js Zeile 52: options.transports = vorhanden ? vorhandene.slice() : [];

weil ein Objekt keine Slice-Methode hat

Danke

faq

Hilfreichster Kommentar

Warum funktioniert winston.loggers.add('category1', {level: "error"}) nicht? Es behandelt "level" als Transport, aber ich werde den Standardtransport des Hauptloggers verwenden.

Alle 3 Kommentare

Die Methode winston.loggers.add erwartet, dass Optionen an eine neue Logger Instanz übergeben werden, nicht an eine Logger Instanz selbst. zB: das wird funktionieren

winston.loggers.add('category1', { transports: [/* Your transports etc */] })

Warum funktioniert winston.loggers.add('category1', {level: "error"}) nicht? Es behandelt "level" als Transport, aber ich werde den Standardtransport des Hauptloggers verwenden.

@ChristophAtAdlos hast du jemals herausgefunden, warum das so ist? Habe das gleiche Problem.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen