前言:
由于项目刚刚上线,出现了许多bug,开发人员需要经常跑过来查看日记,严重影响了我们运维人员的工作效率,时而久之,感觉那个烦啊。。各位仁兄有没有体会到呢!!! 之前找了一些处理日记的工具都不具有实时性,所以都未采纳,刚刚发现了log.io这个工具推荐个大家!!这个工具足以解决现在的问题。
软件介绍:
log.io 是一个实时日志监控工具,采用 node.js + socket.io 开发,使用浏览器访问,每秒可以处理超过5000条日志变动消息。有一点要指出来的是 log.io 只监视日志变动并不存储日志,和其他的监控工具一样,log.io 也采用服务器-客户端的模式。log.io 由两部分组成:server 和 harvester, server 运行在机器 A(服务器)上监视和纪录其他机器发来的日志消息;log harvester 运行在机器 B(客户端)上用来监听和收集机器 B 上的日志改动,并将改动发送给机器 A,每个需要纪录日志的机器都需要一个 harvester.
工作原理图:
更具上面的介绍相信大家对log.io已经有了一个认识,下面我们就来安装配置吧。
在A和B两台机器上同时安装(第一步到第四步)
一、安装依赖包
yum install gcc gcc-c++ openssl-devel pkgconfig -y
二、下载 node.js 源代码,编译并安装:
wget http://nodejs.org/dist/v0.8.14/node-v0.8.14.tar.gz tar xf node-v0.8.14/ ./configure make make install
三、安装NPM
wget https://npmjs.org/install.sh && sh install.shsi
四、安装 log.io(包含了 log server 和 log harvester)
npm config set unsafe-perm true npm install -g --prefix=/usr/local log.io
注意:第二部安装的时候安装时间较长(基于网络下载软件包),请耐心等待!!
五、在服务端(A节点)上启动server
cd node-v0.8.14 log.io-server start
六、在客户端(B节点)配置
vim /root/.log.io/harvester.conf exports.config = { nodeName: "nodeB", ####修改节点名称(自定义) logStreams: { nginx_access: [ ####日志服务的名称(自定义) "/var/log/nginx/access.log", ###日记存储路径 ], nginx_error: [ ####日志服务的名称(自定义) "/var/log/nginx/error.log" ###日记存储路径 ] }, server: { host: '10.10.0.2', ####log.io Server端的IP port: 28777 ####log.io Server端的端口(默认端口) } }
七、在客户端(B节点)启动服务
cd node-v0.8.14 log.io-harvester start
八、通过游览器查看日记实时信息
Linux视频教程 基础Shell高级编程实战/Nginx/redis运维
转载于:https://blog.51cto.com/xiaodong88/1395751