Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict';
- const { createLogger, format, transports } = require('winston');
- const fs = require('fs');
- const path = require('path');
- const env = process.env.NODE_ENV || 'development';
- const logDir = 'log';
- // Create the log directory if it does not exist
- if (!fs.existsSync(logDir)) {
- fs.mkdirSync(logDir);
- }
- const filename = path.join(logDir, 'results.log');
- const logger = createLogger({
- // change level if in dev environment versus production
- level: env === 'production' ? 'info' : 'debug',
- format: format.combine(
- format.label({ label: path.basename(process.mainModule.filename) }),
- format.timestamp({ format: 'YYYY-MM-DD HH:mm:ss' })
- ),
- transports: [
- new transports.Console({
- format: format.combine(
- format.colorize(),
- format.printf(
- info =>
- `${info.timestamp} ${info.level} [${info.label}]: ${info.message}`
- )
- )
- }),
- new transports.File({
- filename,
- format: format.combine(
- format.printf(
- info =>
- `${info.timestamp} [${info.label}] ${info.level}: ${info.message}`
- )
- )
- })
- ]
- });
- logger.error('error message');
- logger.warn('warn message');
- logger.info('info message');
- logger.verbose('verbose message');
- logger.debug('debug message');
- logger.silly('silly message');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement