Skip to content

Commit 2935f45

Browse files
committed
Add option to disable logging
1 parent 0a88733 commit 2935f45

3 files changed

Lines changed: 27 additions & 3 deletions

File tree

lib/index.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,13 @@ var express = require('express');
77
var packages = require('./packages');
88
var rpc = require('./rpc');
99
var workspace = require('./workspace');
10-
var logger = require("./utils/logger")("main");
10+
var logging = require('./utils/logger');
11+
12+
var logger = logging("main");
1113

1214
var prepare = function(config) {
1315
return Q()
16+
.then(_.partial(logging.init, config))
1417
.then(_.partial(workspace.init, config))
1518
.then(_.partial(packages.init, config))
1619
.then(_.partial(rpc.init, config))
@@ -24,7 +27,7 @@ var start = function(config) {
2427
app.use('/packages', express.static(path.resolve(__dirname, '../packages')));
2528
app.use('/rpc', rpc.router);
2629

27-
return prepare()
30+
return prepare(config)
2831
.then(function() {
2932
logger.log("");
3033
logger.log("Application is listening on port", config.port);

lib/utils/logger.js

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
var _ = require("lodash");
22

3+
// State
4+
var enabled = true;
5+
36
// Colors for log types
47
var colors = {
58
'log': ['\x1B[36m', '\x1B[39m'],
@@ -8,6 +11,8 @@ var colors = {
811

912
// Base print method
1013
var print = function(logType, logSection) {
14+
if (!enabled) return;
15+
1116
var args = Array.prototype.slice.call(arguments, 2);
1217
args.splice(0, 0, colors[logType][0]+"["+logType+"]"+colors[logType][1]+"["+logSection+"]");
1318
console.log.apply(console, args);
@@ -23,10 +28,25 @@ var exception = _.wrap(error, function(func, logSection, err, kill) {
2328
if (kill != false) process.exit(1);
2429
});
2530

31+
// Enable/Disable logging
32+
var toggle = function(st) {
33+
enabled = st;
34+
};
35+
36+
// Init logging
37+
var init = function(config) {
38+
if (config.log !== undefined) {
39+
toggle(config.log);
40+
}
41+
};
42+
2643
module.exports = function(name) {
2744
return {
2845
'log': _.partial(log, name),
2946
'error': _.partial(error, name),
3047
'exception': _.partial(exception, name)
3148
};
32-
};
49+
};
50+
51+
module.exports.toggle = toggle;
52+
module.exports.init = init;

test/helper.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ var Q = require('q');
33
var codebox = require("../lib");
44

55
var config = {
6+
log: false,
67
root: __dirname
78
};
89

0 commit comments

Comments
 (0)