实时日志监控服务: log.io, 主要有两部分组成, 分别为 服务端 和 客户端.要求安装 log.io 时, node 的版本应该为最新的稳定版, 我的 node 版本为 v12.17.0
ref:
- centos7 安装最新稳定版本的 nodejs
服务端安装
全局安装 log.io-server
npm install -g log.io
添加默认配置文件
# 添加目录
sudo mkdir -p /root/.log.io
# 添加配置文件(server.json 的具体内容请参看下面给出的示例)
vim /root/.log.io/server.json
{
"messageServer": {
"port": 6689,
"host": "0.0.0.0"
},
"httpServer": {
"port": 6688,
"host": "0.0.0.0"
},
"debug": false,
"basicAuth": {
"realm": "abc123xyz",
"users": {"登录用户名": "登录密码"}
}
}
PM2 启动服务端
如果没有 pm2 服务, 请使用 npm 安装, 如: npm install -g pm2
pm2 start log.io-server
如果想用 pm2 以配置文件方式启动, 参考文中底部的说明.
验证
浏览器输入 ip + 6688 端口, 输入用户名和密码, 就可以进入实时日志界面 (当然, 需要看到日志, 还需要往下配置 客户端
)
http://localhost:6688
客户端安装
全局安装 log.io-file-input
npm install -g log.io-file-input
添加默认配置文件
# 添加目录
sudo mkdir -p /root/.log.io/inputs
# 添加配置文件
vim /root/.log.io/inputs/file.json
{
"messageServer": {
"host": "0.0.0.0",
"port": 6689
},
"inputs": [
{
"source": "服务器名称",
"stream": "网关",
"config": {"path": "/data/xxxx/gateway-0.0.6.log"}
},
{
"source": "服务器名称",
"stream": "xxxx_user",
"config": {"path": "/data/xxx/logs/consumer-user-test.log"}
}
]
}
PM2 启动服务端
pm2 start log.io-file-input
验证
再次在浏览器中访问 6688 端口, 就可以看到效果了
http://localhost:6688
拓展
pm2 配置文件方式启动 log.io
module.exports = {
apps: [
{
name: 'log_server',
script: 'log.io-server',
instances : 1,
merge_logs: true,
log_date_format: 'YYYY-MM-DD HH:mm:ss',
out_file: './logs/server/out.log'
},
{
name: 'log_client',
script: 'log.io-file-input',
instances : 1,
merge_logs: true,
log_date_format: 'YYYY-MM-DD HH:mm:ss',
out_file: './logs/client/out.log'
}
],
};
以上内容保存成 pm2.config.js
文件, 通过命令 pm2 start pm2.config.js
启动服务