log.io软件是node.js开发的,主要是用于实时监控日志,能过web页面展示出来,可以监控多台的,分屏查看等,架构是c/s架构。
下载node.js源代码并安装 http://nodejs.org/dist ,建议下载v0.10.42这个版本就可以了,不需要太新,能用就可以了。
node.js源码安装:
tar -zxvf node-v0.10.42.tar.gz
cd node-v0.10.42
./configure
make && make install
上面安装完成之后,默认的npm也就安装好了,前提是版本要对上哦,网上好多资料说还需要另外安装npm是错的。
安装log.io
npm install -g log.io –user “root” #注意这里的一定要指定用户,不然安装不成功。
安装好了之后,会在指定安装用户的家目录下有一个.log.io的配置文件上当,里面有以下三个文件:
[root@centos-test-3 .log.io]# pwd
/root/.log.io
[root@centos-test-3 .log.io]# ls
harvester.conf log_server.conf web_server.conf
[root@centos-test-3 .log.io]#
web-server.conf可以配置端口和认证。默认访问端口是:28778
第二种安装方法(yum):
安装epel源
yum insatll nodejs -y
安装完成之后测试一下npm有没有安装,如果没有:yum install npm -y
nodejs环境安装好了之后,就可以按上面的方法安装 log.io
npm install -g log.io –user “root”
- 启动
二、启动的时候,我们可以用screen,由于默认是在前台启动的,所以我们可以用screen在后台启动,比较 nohup和&在后台启动要好。
screen直接开启一个后台,然后执行命令,退出可以用:ctrl +a +d
查看screen 有多少会话:screen -ls 或 screen -list
进入会话:screen -r 会话id(可以通过screen -ls查看到的。)
启动命令:/usr/local/node/0.10.42/bin/log.io-server start #服务端
/usr/local/node/0.10.42/bin/log.io-harvester start #监控端
- 配置说明
有三个配置文件,可以配置集群,监控多台服务器的日志,
以下是两台的配置:
其实第二台的log-server是没有用到的,是用第一台的。
[root@penny_10-9-27-155 .log.io]# ls
harvester.conf harvester.conf.bak1 web_server.conf
harvester.conf.bak log_server.conf
[root@penny_10-9-27-155 .log.io]# cat harvester.conf
exports.config = {
nodeName: "penny-test-123.59.143.231",
logStreams: {
go_access: [
"/home/go/goproject/logs/access.log",
],
go_serviced_access: [
"/home/go/goproject/logs/serviced_access.log",
],
go_main_err: [
"/home/go/goproject/logs/main.err.log",
],
},
server: {
host: '10.9.27.155',
port: 28777
}
}
[root@penny_10-9-27-155 .log.io]# cat web_server.conf
exports.config = {
host: '0.0.0.0',
port: 8070,
/*
// Enable HTTP Basic Authentication
auth: {
user: "admin",
pass: "1234"
},
*/
/*
// Enable HTTPS/SSL
ssl: {
key: '/path/to/privatekey.pem',
cert: '/path/to/certificate.pem'
},
*/
/*
// Restrict access to websocket (socket.io)
// Uses socket.io 'origins' syntax
restrictSocket: '*:*',
*/
/*
// Restrict access to http server (express)
restrictHTTP: [
"192.168.29.39",
"10.0.*"
]
*/
}
[root@penny_10-9-27-155 .log.io]# cat log_server.conf
exports.config = {
host: '0.0.0.0',
port: 28777
}
[root@penny_10-9-27-155 .log.io]# pwd
/root/.log.io
[root@penny_10-9-27-155 .log.io]#
第二台:
[root@gocloud-1-10-9-24-217 .log.io]# ls
harvester.conf harvester.conf.bak log_server.conf web_server.conf
[root@gocloud-1-10-9-24-217 .log.io]# cat harvester.conf
exports.config = {
nodeName: "gocloud-118.192.75.11",
logStreams: {
golong_access: [
"/home/go/goproject/logs/access.log",
],
go_serviced_access: [
"/home/go/goproject/logs/serviced_access.log",
],
go_main_err: [
"/home/go/goproject/logs/main.err.log",
],
},
server: {
host: '10.9.27.155',
port: 28777
}
}
[root@gocloud-1-10-9-24-217 .log.io]# cat log_server.conf
exports.config = {
host: '0.0.0.0',
port: 28777
}
[root@gocloud-1-10-9-24-217 .log.io]# cat web_server.conf
exports.config = {
host: '0.0.0.0',
port: 28778,
/*
// Enable HTTP Basic Authentication
auth: {
user: "admin",
pass: "1234"
},
*/
/*
// Enable HTTPS/SSL
ssl: {
key: '/path/to/privatekey.pem',
cert: '/path/to/certificate.pem'
},
*/
/*
// Restrict access to websocket (socket.io)
// Uses socket.io 'origins' syntax
restrictSocket: '*:*',
*/
/*
// Restrict access to http server (express)
restrictHTTP: [
"192.168.29.39",
"10.0.*"
]
*/
}
[root@gocloud-1-10-9-24-217 .log.io]#
原文链接:实时监控日志系统log.io,转载请注明来源!