winstonjs/winston

Best way to get highest log level

Open

#837 opened on Mar 24, 2016

View on GitHub
 (6 comments) (0 reactions) (0 assignees)JavaScript (21,967 stars) (1,789 forks)batch import
Feature RequestGood First IssueHelp Wanted

Description

I have a logger where if one of the transports is at 'debug' or higher, it logs a lot more information than would normally be needed. Some of this data requires other processing before it can be logged. So, before logging, I check the highest log level to see if that extra work really needs to be done.

I've been using the following to find the highest log level on a given logger:

winston.Logger.prototype.getHighestLogLevel = function() {
  var result = 0;

  for(var i in logger.transports) {
    result = Math.max(result, logger.levels[logger.transports[i].level || logger.level]);
  }

  return result;
}

Is there a simplified way to do this? If not, would there be a problem with merging this?

Contributor guide