2012-12-19 143 views
2

所以我想設置一個nodejs進程來監聽和記錄我的Apache2服務器的日誌文件。我知道有一種方法可以將日誌文件「管道化」到腳本中,但我似乎無法使其工作。管理apache日誌文件 - 進入nodejs

我創建了一個名爲「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 
  • FYI:logstash_json就是我創建的,它的工作原理記錄到一個正常的文件自定義格式。

我嘗試了各種不同的格式在httpd.conf文件中,似乎沒有任何工作。

謝謝!

回答

2

後一些更多的工作和綁紮我在書桌上的頭,我終於想通了:

的CustomLog 「|在/ usr/local/bin目錄/節點/ nodelogger/noder」 logstash_json

謝謝,