@nestjs/common
Version:
Nest - modern, fast, powerful node.js web framework (@common)
30 lines (29 loc) • 798 B
JavaScript
const LOG_LEVEL_VALUES = {
verbose: 0,
debug: 1,
log: 2,
warn: 3,
error: 4,
fatal: 5,
};
/**
* Checks if target level is enabled.
* @param targetLevel target level
* @param logLevels array of enabled log levels
*/
export function isLogLevelEnabled(targetLevel, logLevels) {
if (!logLevels || (Array.isArray(logLevels) && logLevels?.length === 0)) {
return false;
}
if (logLevels.includes(targetLevel)) {
return true;
}
let highestLogLevelValue = -Infinity;
for (const level of logLevels) {
const v = LOG_LEVEL_VALUES[level];
if (v > highestLogLevelValue)
highestLogLevelValue = v;
}
const targetLevelValue = LOG_LEVEL_VALUES[targetLevel];
return targetLevelValue >= highestLogLevelValue;
}