Я пытаюсь подключить консоль appjs к файлу с этим кодом:
var fs = require('fs');
var logStream = fs.createWriteStream(__dirname+ '/log.txt', { flags: 'a' });
process.stdout.pipe(logStream);
process.stderr.pipe(logStream);
console.log("test");
Он создает пустой файл, но не более того... С помощью node.exe "тест" идет в консоль, а не в лог-файл. Платформа win32, но я не думаю, что это считается.
В чем проблема с кодом?
вывод:
Stdout, stderr и поток записи файла являются конечными точками типа приемника, поэтому я не могу связать их вместе. Мне нужно заменить stdout и stderr двойными фиктивными потоками, чтобы я мог привязать эти фиктивные потоки как к исходным приемникам, так и к приемнику журналов. Я не уверен, повлияет ли на console.log и console.error замена потоков предложенным механизмом supernova, я бы предпочел использовать специальный регистратор, который использует консоль вместо этого обходного пути.