node.js - 将 apache 日志文件通过管道传输到 Nodejs 中

标签 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');
});

它只是将标准输入写入文本文件。

我还将 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/

相关文章:

tomcat - jetty 是否可以与 Apache 集成,就像热门 Tomcat 与 mod_jk 集成一样?

node.js - 创建一个空的 promise

javascript - 调用函数时如何使用数组对函数进行排队

node.js - 更改 node.js 安装目录

javascript - greasemonkey/chrome 用户脚本的跨浏览器 console.log

mysql - 我可以在树莓派上创建一个没有mysql的数据库吗

node.js - MongoDB 聚合函数,用于返回特定日期范围内的按日计数

java - 登录 Java 和一般 : Best Practices?

Python-如何检查文件是否被另一个应用程序使用?

apache - 如何配置 Munin-2.0.x 以在 Fedora 上使用 CGI(仅)生成内容?