Ich habe einen Logger mit einem Konsolentransport und einen anderen Transport, der zu einem Cloud-basierten Logging-Dienst geht. Für die Konsole möchte ich Nachrichten mit einem Zeitstempel voranstellen und sie einfärben. Für den Cloud-basierten Protokollierungsdienst möchte ich keine Zeitstempel, da der Dienst seine eigenen bereitstellt, und ich möchte auch keine Farben.
PRs für dieses Feature wurden bereits gesendet: #427 und #422
Ist die Konfiguration von Formaten pro Transport bereits möglich, aber ich habe diese Möglichkeit nicht in der README-Datei erklärt gesehen?
Egal, dies ist zwar möglich, aber die Dokumentation verzichtet komplett auf eine Erwähnung der Funktion.
const logger = winston.createLogger({
transports: [
new winston.transports.File({
filename: 'error.log', level: 'error',
format: winston.format.simple(),
}),
new winston.transports.File({
filename: 'combined.log', level: 'debug',
format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
}),
],
});
logger.error('prefixed by the timestamp only in `combined.log`');
Auf jeden Fall zu den Dokumenten hinzufügen plz
@dandv Der printf-Code in Ihrem Kommentar funktioniert nicht
Also diese Zeile...
format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
...braucht so eine schließende Klammer
format: winston.format.printf(info => `${new Date().toISOString()}, ${info.message}`),
Vielen Dank für den Code und das Wissen zur benutzerdefinierten Formatierung! Sehr geschätzt!
Egal, dies ist zwar möglich, aber die Dokumentation verzichtet vollständig auf eine Erwähnung der Funktion.
const logger = winston.createLogger({ transports: [ new winston.transports.File({ filename: 'error.log', level: 'error', format: winston.format.simple(), }), new winston.transports.File({ filename: 'combined.log', level: 'debug', format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`), }), ], }); logger.error('prefixed by the timestamp only in `combined.log`');
@dandv Was ist, wenn ich ein anderes Format außerhalb von Transporten und innerhalb der
Egal, dies ist zwar möglich, aber die Dokumentation verzichtet vollständig auf eine Erwähnung der Funktion.
const logger = winston.createLogger({ transports: [ new winston.transports.File({ filename: 'error.log', level: 'error', format: winston.format.simple(), }), new winston.transports.File({ filename: 'combined.log', level: 'debug', format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`), }), ], }); logger.error('prefixed by the timestamp only in `combined.log`');
@dandv Was ist, wenn ich ein anderes Format außerhalb von Transporten und innerhalb der
Der drinnen.
Hilfreichster Kommentar
Egal, dies ist zwar möglich, aber die Dokumentation verzichtet komplett auf eine Erwähnung der Funktion.