所以我想设置一个nodejs进程来监听和记录我的Apache2服务器的日志文件。我知道有一种方法可以将日志文件“通过管道”传输到脚本,但我似乎无法让它工作。
我创建了一个名为“noder”的文件,其中包含以下代码:
#!/usr/local/bin/node
var stdin = process.stdin;
var fs = require('fs');
stdin.resume();
stdin.on('data', function (chunk) {
fs.writeFileSync('./output.log',chunk.toString());
}).on('end', function () {
console.log('stdin:closed exiting');
});
它只是将标准输入写入文本文件。
我还将 httpd.conf 设置设置为以下内容:
CustomLog |/tmp/noder logstash_json
- 仅供引用:logstash_json 只是我创建的自定义格式,它可以记录到普通文件。
我在 httpd.conf 文件中尝试了各种不同的格式,但似乎没有任何效果。
谢谢!
最佳答案
经过更多的工作并将我的头绑在 table 上,我终于弄清楚了:
CustomLog“|/usr/local/bin/node/nodelogger/noder”logstash_json
谢谢
关于node.js - 将 apache 日志文件通过管道传输到 Nodejs 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13951943/