一个类似linux tail的web版本日志滚动查看工具
码云(https://gitee.com/aqu415/tailf)
CSDN(https://blog.csdn.net/Aqu415/article/details/114419320)
前一段时间由于项目原因,需要经常上服务器看日志;由于没有公共的页面查看与下载,就需要频繁的登录服务器,然后执行一堆命令,最后才能看到日志;
这个过程太繁琐痛苦,网上搜了一圈没有合适的工具,于是自己写了一个简单的日志实时查看的工具;
- Websocket + FileAlterationListenerAdaptor:通过监听文件变化,再增量获得变化的内容通过websocket发送给浏览器客户端
- 多服务器场景下master与slave之间netty连接(异常后重连逻辑未开发)
https://gitee.com/aqu415/tailf
整体架构:
内部实现:
- Websocket + FileAlterationListenerAdaptor:通过监听文件变化,增量获得变化的内容通过websocket发送给浏览器客户端
- 多服务器场景下master与slave之间netty连接(异常后重连逻辑未开发)
- 支持界面实时查看、搜索日志功能
- 支持文件下载
- 支持master、slave模式,通过master界面直接查看所有服务器日志(省去多个服务器需要记住多个访问链接的问题)
- slave自动部署(未开发)
- 日志智能分析(未开发)
- 本地调试如果需要监听多个目录可以通过以下配置,多个目录间以英文 ; 分隔
- 然后执行 com.xx.log.LogApplication.main 方法即可本地启动;
注:配置文件里的监听目录配置是默认配置,可被启动参数覆盖(如:IDE配置启动参数,或者打成jar包后用 jar 命令启动后的参数)
依赖spring-boot打包插件,打成可执行jar包
支持监听多个目录
linux:
使用springboot参数策略:
nohup java -jar -Dtailf.monitor-path=/usr/logs/tomcat1;/usr/logs/tomcat2 tailf-web-xxx.jar &
或
nohup java -jar tailf-web-xxx.jar --tailf.monitor-path=/usr/logs/tomcat1;/usr/logs/tomcat2 &
具体参数会在下面列表列举
或者指定整个配置文件
nohup java -jar tailf-web-xxx.jar --spring.config.location=/usr/local/application.yaml &
windows:
使用springboot参数策略:
java -jar -Dtailf.monitor-path=/usr/logs/tomcat1;/usr/logs/tomcat2 tailf-web-xxx.jar
或
java -jar tailf-web-1.0-xxx.jar --tailf.monitor-path=d:/tomcat1;d:/tomcat2
或者指定整个配置文件
java -jar tailf-web-xxx.jar --spring.config.location=d:/application.yaml
参数名称 | 备注 | 属性 |
---|---|---|
tailf.monitor-path | 本地监听目录,可以设置多个以 ; 隔开 | com.xx.log.properties.AppProperties |
tailf.default-show-line-num | 默认初始显示内容行数 | 同上 |
tailf.web-role | 当前应用的角色(master、slave) | 同上 |
tailf.master-netty-host | 如果当前应用角色是slave,则需要配置向master web注册IP | 同上 |
tailf.master-netty-port | 如果当前应用角色是slave,则需要配置向master web注册netty端口 | 同上 |
在树节点上右键即可弹出下载菜单
如果有多台服务器需要进行日志查看,但是又不想记住多个服务器访问地址则可以使用master-slave模式,具体操作如下:
1、master配置
- 配置当前服务器角色是master
- 配置master服务器的内网IP(与slave通信会使用)
- 配置master netty监听端口
2、slave配置
- 这三个配置除了角色配置成 slave,其他两项都配置成一样的。如下:
3、启动服务
- 首先启动master
- 再启动slave(另外启动一个IDE)
- 界面效果:
文件支持下载和搜索
- 如有使用本工具,可在评论区备注留下贵公司名字