const winston = require('winston') const chalk = require('chalk') require('dotenv').config() // Hanles logging class Logger{ constructor() { this.logger = winston.createLogger({ level: 'info', format: winston.format.json(), defaultMeta: {service: 'user-service'}, transports: [ new winston.transports.File({filename: 'error.log', level: 'error'}), new winston.transports.File({filename: 'combined.log'}) ] }) if (process.env.NODE_ENV !== 'prod') {this.logger.add(new winston.transports.Console({format: winston.format.simple()}))} } Error(x) {if (process.env.NODE_ENV !== 'prod') {console.error(chalk.red(x))} else {this.logger.error(x)}} Info(x) {if (process.env.NODE_ENV !== 'prod') {console.log(chalk.yellow(x))} else {this.logger.info(x)}} } module.exports = () => {return new Logger()}