log.io:瀏覽器端實時日誌監管系統

1、軟件介紹
log.io 是一個實時日誌監控工具,採用 node.js + socket.io 開發,使用瀏覽器訪問,每秒能夠處理超過5000條日誌變更消息。有一點要指出來的是 log.io 只監視日誌變更並不存儲日誌,和其餘的監控工具同樣,log.io 也採用服務器-客戶端的模式。log.io 由兩部分組成:server 和 harvester。server 運行在機器 A(服務器)上監視和紀錄其餘機器發來的日誌消息;log harvester 運行在機器 B(客戶端)上用來監聽和收集機器 B 上的日誌改動,並將改動發送給機器 A,每一個須要紀錄日誌的機器都須要一個 harvester.node

工做原理圖
![](https://s1.51cto.com/images/blog/201901/19/8670a54cae03c4b1fdb99ff2b4f291db.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

2、安裝配置

A和B兩臺機器上同時安裝(第一步到第四步)
一、安裝依賴包
yum install gcc gcc-c++ openssl-devel pkgconfig -ylinux

二、下載 node.js 源代碼,編譯並安裝:
說明:建議使用低版本的node,高版本問題太多
二進制包安裝:
wget https://nodejs.org/download/release/v4.9.1/node-v4.9.1-linux-x64.tar.gznginx

tar xvf node-v4.9.1-linux-x64.tar.gzc++

mv node-v4.9.1 /usr/local/nodejsapache

vim /etc/profile
#nodejs
export PATH=$PATH:/usr/local/nodejs/bin
source /etc/profilenpm

以上步驟,同時安裝了node 和npmvim

3、安裝log.io
1,安裝 log.io 包。這裏必須指定一個用戶名,例如 root。由於 log.io 須要在用戶的根目錄裏面創建目錄,存放配置信息。
npm install -g log.io --user "root"瀏覽器

2, 修改配置信息。默認的配置信息以下,設置了一個 application_server 的節點,下面有 apache 的日誌流信息,監測了兩個日誌文件 access.log 和 error.log。並且,設置了 log.io 服務器的信息,28777 是默認 log.io 服務監測的 TCP 端口,用來傳輸日誌信息。
配置日誌收集端
vi ~/.log.io/harvester.conf
exports.config = {
nodeName: "application_server",
logStreams: {
apache: [
"/var/log/apache2/access.log",
"/var/log/apache2/error.log",
]
},
server: {
host: '0.0.0.0',
port: 28777
}
}服務器

  1. 啓動 log.io 服務器。
    log.io-server app

  2. 打開瀏覽器訪問 hostname:28778,能夠看到 log.io 界面,說明安裝成功。如圖 1 所示。
    log.io:瀏覽器端實時日誌監管系統

5、在服務端上啓動server
配置文件參考:
exports.config = {
server: {
host: '192.168.50.234',
port: 28777
}
}

啓動log.io
cd node-v0.8.14
log.io-server & ##以守護進程運行

6、在Client端修改配置文件(樣例)
vim /root/.log.io/harvester.conf
exports.config = {
nodeName: "12",
logStreams:{
nginx_access: [
"/usr/local/nginx/logs/access.log",
],
nginx_error: [
"/usr/local/nginx/logs/error.log"
],

},
server: {
host: '192.168.50.234', ##Server端地址
port: 28777 ##和Server端交互端口
}
}

啓動服務:
cd node-v0.8.14
log.io-harvester & (只須要啓動日誌收集端)

7、經過瀏覽器查看日誌信息
http://192.168.50.234:28778 ##28777是Server端和Client端的交互端口;28778是請求

錯誤一:
若是啓動log.io-server 或者 log.io-harvester 報錯,請升級node 版本
node 升級
node有一個模塊叫 n ,是專門用來管理node.js的版本的。
第一步:首先安裝n模塊:
npm install -g n

第二步:升級node.js到最新穩定版
n stable

第二步:n後面也能夠跟隨版本號好比:n v11.6.0我是按照從上到下,最終正常運行。

相關文章
相關標籤/搜索