Winston: Erlauben Sie die Konfiguration von Formaten pro Transport innerhalb desselben Loggers

Erstellt am 8. Juli 2018  ·  5Kommentare  ·  Quelle: winstonjs/winston

Was ist die Funktion?

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.

Ist dies eine Funktion, die Sie mit unserer Unterstützung implementieren möchten?

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?

Hilfreichster Kommentar

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`');

Alle 5 Kommentare

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.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

alditis picture alditis  ·  3Kommentare

JaehyunLee-B2LiNK picture JaehyunLee-B2LiNK  ·  3Kommentare

Nepoxx picture Nepoxx  ·  4Kommentare

sinai-doron picture sinai-doron  ·  3Kommentare

Buzut picture Buzut  ·  3Kommentare