如何在Node.js应用程序中启用调试

时间:2015-03-29 17:51:54

标签: node.js

目前我的模块中有很多console.log。其中许多是调试消息,我只需要查看,如果我正在调试我的应用程序。

我想在启动应用程序时使用参数启用调试,例如node myApp.js -d。此外,如果调试处于活动状态,我的模块应该只调用console.log

Node的最佳做法是什么?

2 个答案:

答案 0 :(得分:3)

使用像winston这样的东西,因为它提供了不同的日志记录选项。以下是您可能需要的一个简单示例

// Require winston logging library
var winston = require('winston');

// Check if -d is present as CLI argument
if(process.argv.indexOf('-d') > -1){
   winston.level = 'debug';
}

// This is only print when winston.level is debug
winston.log('debug', 'Now my debug messages are written to console!');

答案 1 :(得分:1)

向上查看debug。 我相信你正在寻找的东西。

安装调试:

 npm install debug --save

示例代码:

var debug = require('debug')('your module');
debug('msg', 'more details');

要开始调试所有应用程序,请运行以下命令:

DEBUG=* node myApp.js

只调试应用上的几个模块:

DEBUG=first,second node myApp.js

没有调试通常会运行您的应用

node myApp.js