微服务日志之实时日志

原创
2018/07/01 14:43
阅读数 3.2K

    在微服务架构中,一般会有几百甚至几千个服务,这些服务可能会被自动部署到集群中的任何一台机器上,因此,开发人员在开发的时候,要想实时查看日志输出就很不方便了,首先需要查询出服务被部署到哪一台机器上了,其次要向管理员申请目标机器的访问权限,接着要用SSH登录到目标服务器上,使用tail -f来查看实时日志,而tail -f的功能很有限,使用起来也很不方便。这个开源项目就是为了解决微服务架构下日志的实时查看问题,使开发人员无需服务器权限就能获得强大灵活方便的查看实时日志的能力。

    指定项目名称、服务名称和日志级别,打开实时日志页面后浏览器自动和服务器建立WebSocket连接,当有新的日志输出的时候,服务器就会主动通过WebSocket连接将日志推送给实时日志页面。

    1、指定项目名称、服务名称和日志级别

        http://localhost:8080/realtime-log-0.0.1-SNAPSHOT/realtime-log.jsp?serviceName=logback&projectName=logs&level=debug

    2、建立WebSocket连接

        websocket = new WebSocket('ws://localhost:8080/realtime-log-0.0.1-SNAPSHOT/log/<%=projectName%>/<%=serviceName%>/<%=level%>');

    3、在页面上展现服务器返回的实时日志

        websocket.onmessage = function(event) { //event.data就是服务器返回的日志 };

更多的代码细节以及完整可运行的项目请看开源项目 https://github.com/ysc/realtime-log

 

展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部