本人在公司的Red Hat Enterprise Linux Server release 6.1 (Santiago) 服務(wù)器上做的測(cè)試,可參見最下面截圖,監(jiān)控Tomcat和其他日志信息。很是方便哈^^.
和其他的監(jiān)控工具一樣, log.io 也采用服務(wù)器-客戶端的模式。 log.io 由兩部分組成: server 和 harvester, server 運(yùn)行在機(jī)器 A (服務(wù)器)上監(jiān)視和紀(jì)錄其他機(jī)器發(fā)來的日志消息; log harvester 運(yùn)行在機(jī)器 B (客戶端)上用來監(jiān)聽和收集機(jī)器 B 上的日志改動(dòng),并將改動(dòng)發(fā)送給機(jī)器 A ,每個(gè)需要紀(jì)錄日志的機(jī)器都需要一個(gè) harvester.
在機(jī)器 A 和 B 上
因?yàn)?/span> log.io 基于 node.js ,所以在服務(wù)器和客戶端都要安裝 node.js ,這里采用編譯安裝的辦法,首先安裝需要的依賴包:
$ sudo apt-get install g++ make git libssl-dev pkg-config
下載 node.js 源代碼,編譯并安裝:
$ wget http://nodejs.org/dist/v0.8.14/node-v0.8.14.tar.gz
$ tar zxvf node-v0.8.14.tar.gz
$ cd node-v0.8.14/
$ ./configure
$ make
$ sudo make install
安裝 NPM :
$ curl https://npmjs.org/install.sh | sudo sh
安裝 log.io (包含了 log server 和 log harvester )
$ sudo npm config set unsafe -perm true
$ sudo npm install -g --prefix=/usr/local log.io
在機(jī)器 A 上啟動(dòng) server
$ sudo log.io server start
在機(jī)器 B 上配置和啟動(dòng) harvester
server 用來監(jiān)聽各個(gè)機(jī)器發(fā)來的日志消息, harvester 用來把本機(jī)的日志發(fā)給 server ,所以 harvester 配置的時(shí)候需要指定 server 的主機(jī)地址(或域名)。如何告訴 harvester 哪些日志需要監(jiān)控呢? log_file_paths 就是指定日志路徑的地方。下面的配置是 h arvester 把 auth.log 和 harvester.log 這兩個(gè)日志的改動(dòng) 發(fā)送給 server :
$ sudo vi /etc/log.io/harvester.conf
exports.config = {
// Log server host & port
server: {
host: 'log.vpsee.com', // 也可以用 IP 地址
port: 8998,
},
// Watch the following log files, defined by label:path mappings
log_file_paths: {
logio_auth: '/var/log/auth.log',
logio_harvester: '/var/log/log.io/harvester.log',
},
instance_name : 'log_node_1'
}
啟動(dòng) harvester :
$ sudo log.io harvester start
測(cè)試
打開瀏覽器訪問 log server 所在的機(jī)器 A ,域名是 log.vpsee.com (也可以用 IP 地址),端口是 8998 : ====================================================================================== 本人測(cè)試時(shí)harvester.conf文件配置如下:
/* Log.io log harvester configuration */
exports.config = {
// Log server host & port
server: {
host: '192.168.32.92',
port: 8998,
},
// Watch the following log files, defined by label:path mappings
log_file_paths: {
logio_tomcat: '/usr/local/tomcat6/logs/catalina.out',
logio_oned: '/opt/nebula/ONE/var/oned.log',
logio_harvester: '/var/log/log.io/harvester.log',
},
// Define name of current machine.
// Alternatively, you can set this name in /etc/profile:
// export LOGIO_HARVESTER_INSTANCE_NAME='my_log_machine'
// If so, comment out the line below
instance_name : 'log_node_1'
}
posted on 2012-11-06 15:49
David1228 閱讀(2199)
評(píng)論(0) 編輯 收藏 所屬分類:
Linux 、
云計(jì)算、虛擬化