Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. 'use strict';
  2. const { createLogger, format, transports } = require('winston');
  3. require('winston-daily-rotate-file');
  4. const fs = require('fs');
  5. const path = require('path');
  6.  
  7. const env = process.env.NODE_ENV || 'development';
  8. const logDir = 'log';
  9.  
  10. // Create the log directory if it does not exist
  11. if (!fs.existsSync(logDir)) {
  12. fs.mkdirSync(logDir);
  13. }
  14.  
  15. const dailyRotateFileTransport = new transports.DailyRotateFile({
  16. filename: `${logDir}/%DATE%-results.log`,
  17. datePattern: 'YYYY-MM-DD'
  18. });
  19.  
  20. const logger = createLogger({
  21. // change level if in dev environment versus production
  22. level: env === 'development' ? 'verbose' : 'info',
  23. format: format.combine(
  24. format.timestamp({
  25. format: 'YYYY-MM-DD HH:mm:ss'
  26. }),
  27. format.printf(info => `${info.timestamp} ${info.level}: ${info.message}`)
  28. ),
  29. transports: [
  30. new transports.Console({
  31. level: 'info',
  32. format: format.combine(
  33. format.colorize(),
  34. format.printf(
  35. info => `${info.timestamp} ${info.level}: ${info.message}`
  36. )
  37. )
  38. }),
  39. dailyRotateFileTransport
  40. ]
  41. });
  42.  
  43. logger.error('error message');
  44. logger.warn('warn message');
  45. logger.info('info message');
  46. logger.verbose('verbose message');
  47. logger.debug('debug message');
  48. logger.silly('silly message');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement