websocket在前端展示后端日志

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了websocket在前端展示后端日志相关的知识,希望对你有一定的参考价值。

参考技术A 最近在写平台收到一个需要看后台运行日志的需求,所以查看了下使用websocket来写。主要思想就是使用Linux的tail指令进行实时日记读取,然后在进行与界面通信展示的过程。

第一步

添加pom依赖:

第二步

定义一个Bean

第三步

这里可以实现两种方式:

一种方式是实时进行打印展示日志,不进行写文件,然后使用tail方式读取;

两外一种方式就是进行写文件,然后使用tail方式读取文件方式(可以直接跳过此步,直接看第四步)。

这两种方式各有优缺点:

1、第一种

优点:实时打印,不需要进行写文件的操作

缺点:界面刷新后日志丢失,无法重现,需要进行一个长链接处理

2、第二种

优点:界面刷新或者关闭重开不影响日志的显示,且日志保存在磁盘中

缺点:需要额外的空间写文件,其他暂未发现

先说说第一种方式,这里需要创建一个service:

这里主要用来进行一个调用触发日志打印的。第二种方式放在第四步来讲。

第四步

写一个前端websocket来接受后端websocket,这也是一个Controller,但比较特殊,是用WS协议进行通信的。

这里分两个写法:

第一种,对应第三步里的第一种

第二种,对应第三步里的第二种

选择第二种还需要提供线程机制

第五步

前端开发

这里的参数param就是你在磁盘内创建的日志文件。

参考:

https://blog.csdn.net/sihai12345/article/details/80924937

以上是关于websocket在前端展示后端日志的主要内容,如果未能解决你的问题,请参考以下文章

WebSocket Session共享

后端实时生成图片,前端VUE如何获取并展示

怎么看前端有没有展示后端的数据

前端接受后端 blob 文件流 并进行展示和下载

MySQL存储日志并使用Loganalyzer作为前端展示

测试:进入某个页面显示内容错误,如何定位是前端还是后端问题?