diff options
author | Samy Pessé <samypesse@gmail.com> | 2015-01-25 15:27:40 +0100 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2015-01-25 15:27:40 +0100 |
commit | 0f0ec4cf3d4741290a29cebacb7b544bd18cde15 (patch) | |
tree | 155a811030d45597b8156e8b5f28a83e5b467e52 /lib/utils/logger.js | |
parent | 06ab84abe33a131c089f42bf0bd9ede8deb6e671 (diff) | |
download | gitbook-0f0ec4cf3d4741290a29cebacb7b544bd18cde15.zip gitbook-0f0ec4cf3d4741290a29cebacb7b544bd18cde15.tar.gz gitbook-0f0ec4cf3d4741290a29cebacb7b544bd18cde15.tar.bz2 |
Improve logger
Diffstat (limited to 'lib/utils/logger.js')
-rw-r--r-- | lib/utils/logger.js | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/lib/utils/logger.js b/lib/utils/logger.js index 6be4ea7..927048b 100644 --- a/lib/utils/logger.js +++ b/lib/utils/logger.js @@ -28,6 +28,11 @@ module.exports = function(_write, logLevel) { return _write(msg); }; + // Format a message + logger.format = function() { + return util.format.apply(util, arguments); + }; + // Write a line logger.writeLn = function(msg) { return this.write((msg || "")+"\n"); @@ -39,7 +44,7 @@ module.exports = function(_write, logLevel) { var levelKey = _.findKey(LEVELS, function(v) { return v == level; }); var args = Array.prototype.slice.apply(arguments, [1]); - var msg = util.format.apply(util, args); + var msg = logger.format.apply(logger, args); if (lastChar == '\n') { msg = COLORS[levelKey](levelKey.toLowerCase()+":")+" "+msg; @@ -47,10 +52,21 @@ module.exports = function(_write, logLevel) { return logger.write(msg); }; + logger.logLn = function() { + var args = Array.prototype.slice.apply(arguments); + args.push("\n"); + logger.log.apply(logger, args); + }; // Write a OK logger.ok = function(level) { - return logger.log(level, color.green("OK")+"\n"); + var args = Array.prototype.slice.apply(arguments, [1]); + var msg = logger.format.apply(logger, args); + if (arguments.length > 1) { + logger.logLn(level, color.green('>> ') + msg.trim().replace(/\n/g, color.green('\n>> '))); + } else { + logger.logLn(level, color.green("OK")); + } }; // Write an "FAIL" @@ -62,11 +78,7 @@ module.exports = function(_write, logLevel) { levelKey = levelKey.toLowerCase(); logger[levelKey] = _.partial(logger.log, level); - logger[levelKey].ln = function() { - var args = Array.prototype.slice.apply(arguments); - args.push("\n"); - logger[levelKey].apply(logger, args); - }; + logger[levelKey].ln = _.partial(logger.logLn, level); logger[levelKey].ok = _.partial(logger.ok, level); logger[levelKey].fail = _.partial(logger.fail, level); }); |