import winston, {level} from "winston";

//format of the logger.info

const consoleFormat = winston.format.printf(({level, message}) => {
    const logLevel = winston.format.colorize().colorize(level, `${level.toUpperCase()}`);
    return `[${logLevel}] : ${message}`;
})


//Logger
let logger = winston.createLogger({
    transports: [
        new winston.transports.Console({
            level: process.env.LOG_LEVEL,
            handleExceptions: true,
            format: winston.format.combine(winston.format.timestamp(), consoleFormat)
        })
    ]
})


//print unknown error

logger.on('error', err => {
    logger.info(`${err.message}`);
})

export default logger;
