diff --git a/lib/levels.js b/lib/levels.js index 2429c19..98a5e9b 100644 --- a/lib/levels.js +++ b/lib/levels.js @@ -5,24 +5,29 @@ function Level(level, levelStr) { /** * converts given String to corresponding Level - * @param {String} sArg String value of Level + * @param {String} sArg String value of Level OR Log4js.Level * @param {Log4js.Level} defaultLevel default Level, if no String representation * @return Level object * @type Log4js.Level */ function toLevel(sArg, defaultLevel) { - if (sArg === null) { - return defaultLevel; - } + if (sArg === null) { + return defaultLevel; + } - if (typeof sArg == "string") { - var s = sArg.toUpperCase(); - if (module.exports[s]) { + if (typeof sArg == "string") { + var s = sArg.toUpperCase(); + if (module.exports[s]) { return module.exports[s]; - } - } - return defaultLevel; + } + else { + return defaultLevel; + } + } + + return toLevel(sArg.toString()); + }; Level.prototype.toString = function() {