Java与Nodejs中控制台输出及日志记录对比
该博客框架解析Markdown的table不是太好, 以下采用列举方式进行对比
Java
- 控制台:
System.out.println('hello');
- 日志记录(自带):
java.util.logging.Logger
- 日志记录(第三方):
slf4j(定义接口), log4j(实现类)
Nodejs
- 控制台:
console.log('hello');
- 日志记录(自带):
util.log
- 日志记录(第三方):
log4js
笔者经过测试, 选择第三方的日志库. Java Log4j配置详见我的另一篇博客 http://www.arccode.net/log4j-config.html.
NodeJS配置Log4JS日志
在开发代码中加入如下代码 其中’…..’表示笔者自己的业务代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| ..... ..... // #引用log4js模块 var log4js = require('log4js')
..... ..... // #加载log4js配置 log4js.configure(__dirname + '/log4j.json', {}) ;// #获取指定分类的日志 var loggerConsole = log4js.getLogger('console'); var loggerInfo = log4js.getLogger('fileInfo')
.....; loggerConsole.debug('db open normal.' + message) ; loggerInfo.info('db open normal.' + message) ..... ;
|
log4js.json配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| { "appenders": [ { "type": "console", "category": "console" }, { "type": "file", "absolute": true, "filename": "/data/webstorm/imageHandler/log.log", "category": "fileInfo" } ], "levels": { "console": "debug", "fileInfo": "info" } }
|
更详细的配置信息详见Log4JS文档
参考资料
Log4JS文档