管道apache日志文件 - 进入nodejs

时间:2012-12-19 11:56:03

标签: node.js logging apache2 apache

所以我想设置一个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');
});

它只是将stdin写入文本文件。

我还将httpd.conf设置设置为以下内容:

CustomLog |/tmp/noder logstash_json
  • fyi:logstash_json只是我创建的自定义格式,它可以记录到普通文件。

我在httpd.conf文件中尝试过各种不同的格式,似乎没什么用。

谢谢!

1 个答案:

答案 0 :(得分:2)

经过一番工作并把我的头放在桌子上,我终于明白了:

CustomLog“| / usr / local / bin / node / nodelogger / noder”logstash_json

谢谢,