Узел Winston logger: раскраска не работает - PullRequest
0 голосов
/ 01 июля 2018

Я создал модуль регистрации, который использует Winston. Я пытаюсь отформатировать журналы так, чтобы они имели цветовую кодировку. Однако это портит мои журналы со следующим выводом.

{"message":"Server Running On: localhost:3000","level":"\u001b[32minfo\u001b[39m","timestamp":"2018-06-30 19:20:09"}
{"message":"MongoDB Successfully Connected On: mongodb://localhost:27017/project","level":"\u001b[32minfo\u001b[39m","timestamp":"2018-06-30 19:20:09"}

Можете ли вы увидеть строки \ u .... Журналы также не имеют цветовой кодировки. Как моя конфигурация неверна. Я использую Winston 3. Пожалуйста, смотрите код ниже.

import { createLogger, transports, format } from "winston";
import * as appRoot from "app-root-path";

class Logger {

    public logger: any;

    constructor() {

        const options = {
            file: {
                level: "info",
                filename: `${appRoot}/logs/app.log`,
                handleExceptions: true,
                json: true,
                maxsize: 5242880, // 5MB
                maxFiles: 5,
                colorize: true,
            },
            console: {
                level: "debug",
                handleExceptions: true,
                json: false,
                colorize: true,
            },
            exceptionHandlers: {
                filename: `${appRoot}/logs/exceptions.log`,
            },
        };

        this.logger = createLogger({

            format: format.combine(
                format.simple(),
                format.timestamp({
                    format: "YYYY-MM-DD HH:mm:ss",
                }),
                format.colorize(),
                format.json(),
            ),

            transports: [
                new transports.File(options.file),
                new transports.Console(options.console),
            ],
            exceptionHandlers: [
                new transports.File(options.exceptionHandlers),
            ],
            // do not exit on handled exceptions
            exitOnError: false,
        });

    }

}

export default new Logger().logger;
...