实时日志监控服务: log.io, 主要有两部分组成, 分别为 服务端 和 客户端.要求安装log.io时, node的版本应该为最新的稳定版,我的node版本为v12.17.0
ref:
服务端安装
全局安装 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端口, 输入用户名和密码, 就可以进入实时日志界面 (当然, 需要看到日志,还需要往下配置客户端
)
客户端安装
全局安装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 端口, 就可以看到效果了
拓展
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
启动服务