我正在使用hapi和良好的模块 而且我想知道什么是最好的方式 打印我的调试消息而不使用 控制台日志。
例如现在是
server.register(
{
register: require('good'),
options: options
},
function (err) {
if (err) {
return console.error(err);
}
// If the module is required by another script, we don’t start the server (ie test suite)
if (!module.parent) {
server.start(function () {
console.info('Server started at ' + server.info.uri);
});
}
}
);
使用https://github.com/visionmedia/debug是否合适 像
server.register(
{
register: require('good'),
options: options
},
function (err) {
if (err) {
return console.error(err);
}
// If the module is required by another script, we don’t start the server (ie test suite)
if (!module.parent) {
server.start(function () {
debug('Server started at ' + server.info.uri);
});
}
}
);
还是有更好的选择?
答案 0 :(得分:5)
Debug非常好。或者,如果您想留在hapi生态系统中,可以使用Good来管理您的日志记录需求:
var Hapi = require('hapi');
var server = new Hapi.Server();
server.connection({ port: 4000 });
var options = {
reporters: [{
reporter: require('good-console'), // Log everything to console
events: { log: '*' }
}, {
reporter: require('good-file'), // Log 'debug' to debug_log.log
events: { log: 'debug' },
config: 'debug_log.log'
}, {
reporter: require('good-file'), // Log 'error' to error_log.log
events: { log: 'error' },
config: 'error_log.log'
}]
};
server.register({
register: require('good'),
options: options
}, function (err) {
if (err) {
server.log(['error'], err); // log an 'error' message
}
server.start(function (err) {
if (err) {
server.log(['error'], err); // log an 'error' message
}
server.log(['debug'], 'Started...'); // log a 'debug' message
});
});
除了登录控制台之外还有其他一些记者"让你登录到HTTP,UDP等:
https://github.com/hapijs/good#officially-supported-by-hapijs