Search code examples
javascriptnode.jstypescriptwinstondefinitelytyped

typescript add color to winston logging levels


I'm trying to add colors to logging levels of winston. The output still has no color.

import { addColors , Logger, LoggerInstance, transports, AbstractConfigSet } from "winston";

let level = "debug";

const levels = {
        debug: 0,
        info: 1,
        warn: 2,
        error: 3
    };

const colors = {
        debug: 'blue',
        info: 'green',
        warn: 'yellow',
        error: 'red'
    };


export const log: LoggerInstance = new Logger({
  transports: [ new transports.Console() ],
    level,
    levels
});

addColors(colors);

Solution

  • You don't need to redefine the level and colors, just pass colorize: true to you console transport:

    new Logger({
        transports: [
            new transports.Console({
                colorize: true
            })
        ]
    });