javascript - Node.JS - 想要将输出从控制台移至日志/错误文件中

标签 javascript node.js

有人可以帮我将以下代码从控制台输出转换为文件输出吗?我正在努力解决 Node.js 的日志记录和异步特性。该脚本在控制台中运行良好,但我想将排序后的输出通过管道传输到文件中的各个服务器部分,并将 STDERR 传输到另一个文件。

var rexec = require('remote-exec');
var fs = require('fs');
var lineReader = require('line-reader');
var streamBuffers = require('stream-buffers');

var _ = require('lodash');

var conn_options = {
  port: 22,
  username: '*****',
  privateKey: fs.readFileSync('R:/nodeJS/sshkey.priv')
}

// something that dumps out a bunch of data...
var cmds = ['df']
var filename = 'servers.txt';

lineReader.eachLine(filename,function(line,last,cb){

    var buffer = new streamBuffers.WritableStreamBuffer();

    var my_conn_options = _.clone(conn_options);


    rexec(line,cmds,my_conn_options,function(err){
        if (err) {
            console.log(line, err);
        } else {
            console.log('>>>> Start: ' + line + '<<<<')
            console.log(buffer.getContentsAsString());
            console.log('>>>> End: ' + line + '<<<<')
        };

    });
    if (last) {
        cb(false); // stop reading
    } else {
        cb();
    }
}); 

最佳答案

检查这个例子,应该有帮助..

var fs = require('fs');
var util = require('util');
var logFile = fs.createWriteStream('log.txt', { flags: 'a' });
  // Or 'w' to truncate the file every time the process starts.
var logStdout = process.stdout;

console.log = function () {
  logFile.write(util.format.apply(null, arguments) + '\n');
  logStdout.write(util.format.apply(null, arguments) + '\n');
}
console.error = console.log;

关于javascript - Node.JS - 想要将输出从控制台移至日志/错误文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39128392/

相关文章:

javascript - 将异步等待与 babel 和 ES6 promise 一起使用时无法解决 promise

javascript - 在 Sails.js 中从 PostgreSQL 获取 BYTEA

javascript - 如何使用 es6 过滤对象值

javascript - 无法在状态修改方法中访问状态对象的对象属性(TypeError)

javascript - 在谷歌浏览器中激活麦克风时出错

node.js - Npm install 发出警告,npm audit fix 不起作用

javascript - 崩溃后从 Safari 记录 JavaScript 错误

javascript - 如何解决编写嵌套指令时缺乏 promise 展开的问题

node.js - 如何使用 Express.js 为 Restful API 构建代码?

javascript - 使用js创建异步循环