Explain use of levels in winston logger

拜拜、爱过 提交于 2020-04-30 08:10:10

问题


Hey i am using this winston logger, kindly explain use of level inside the transports, what will happen if i use logger with info while logging, do i have to use debug while i log my data.

var logger = new (winston.Logger)({
transports: [
  new (winston.transports.Console)({
    level: 'debug',
    json: true
  }),
  new (winston.transports.File)({
    name: 'order_check',
    filename: './logs/order_check.log',
    level: 'debug'
  })
]
});
logger.log("info","request body");

回答1:


The level inside your transport indiciates the minimum logging level that transport will "listen out for"

From the documentation: https://github.com/winstonjs/winston#logging-levels

Each level is given a specific integer priority. The higher the priority the more important the message is considered to be

{ error: 0, warn: 1, info: 2, verbose: 3, debug: 4, silly: 5 }

So, in your example, you're transports are configured for debug: 4

This means, it will log levels

  • 4 (debug)
  • 3 (verbose)
  • 2 (info)
  • 1 (warn)
  • 0 (error)

A good use case for this would be to set one transport (Console for example) to debug, and your other to info.

This would output all debug information to the console, but only log info to file, preventing log file clutter.




回答2:


the logging level reflects the importance of the logging message for example, debug is used for non important messages, used for debugging only

info is used for something more important

if you set the logging level to debug then the logs will show debug and info messages (and higher)

if you set the logging level to info then the logs will show only info messages (and higher) - you wont see the debug messages - this helps to avoid clutter in the logs and prevents too much info being shown in the logs in a production environment



来源:https://stackoverflow.com/questions/34809486/explain-use-of-levels-in-winston-logger

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!