Woo*_*der 0 html javascript node.js npm console.log
我正在使用 NodeJs 开发游戏,并意识到访问旧console.log输出将非常有帮助。机制和计算变得相当复杂,以后可以访问它们以搜索并对其进行一些数据分析以找到我的修改器(战斗机制)的正确值会很好。同时,我也想console.log在控制台中看到。
我知道这对于常规的 javascript 是不可能的,(请参阅This),但我希望 npm 有一些方法来拦截日志并将它们记录到服务器上的文件中。有什么想法吗?
同时记录到 stdout 和文件的 NPM 选项可以是Winston。Winston 是一个日志记录库,允许您定义自己的记录器,指定它们的传输(传输是您如何处理这些日志行)。在您的情况下,您可以定义一个具有两个传输、标准输出和日志文件的记录器。示例(受Winston 文档启发):
const winston = require('winston');
let logger = new (winston.Logger)({
transports: [
new (winston.transports.Console)(),
new (winston.transports.File)({ filename: 'somefile.log' })
]
});
logger.info('hello, world!');
Run Code Online (Sandbox Code Playgroud)
如果您运行上面的代码,您将在控制台和somefile.log.
您可以像这样拦截 console.log
var cl = console.log
console.log = function(...args){
// your custom logging logic here
cl.apply(console, args)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3074 次 |
| 最近记录: |