我有一个简单的nodejs docker服务。我在开发中观看stdout,在生产中登录到aws cloudwatch。
我刚刚添加了永久监视器,但这会中断我的日志记录。所以我开始在孩子的过程中捕捉stdout,
const forever = require('forever-monitor');
const child = new (forever.Monitor)('server.js', {
max: 3,
silent: true,
args: []
});
child.on('stdout', function(data) {
console.log(data);
});
但那只是给了我字节码-
[nodemon] starting `node forever.js`
<Buffer 63 6f 6e 6e 65 63 74 65 64 20 74 6f 20 6c 69 76 65 20 64 62 0a>
如何将我的
console.log
语句重新输入std? 最佳答案
看起来data
是一个流(参见node docs)。
我已将代码更新为-
child.on('stdout', function(data) {
console.log(data.toString());
});
现在一切如期而至。(我发现this question很有用)。
关于node.js - 我如何使用npm forever-monitor登录到stdout,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44457375/