-
Notifications
You must be signed in to change notification settings - Fork 7.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SpringBoot Admin集成Arthas实践 #1601
Comments
代码共享一下如何? |
代码都贴上来了 |
@jujunchen 是否兼容最新的spring boot admin 2? |
兼容 |
你好,源码有贴上来吗?没找到。。。 |
已经参考此文档实现了SBA 2.0的兼容,基于arthas3.4.5版本,生产运行几个月,多次解决生产问题。使用了JMX接口对目标进程附加的arthas客户端进行启动并在webconsole中关闭。剩余问题是希望新版本arthas客户端能开放关闭接口,现在通过srping-boot插件无法获取到arthas-agent的classloader以及bootstrap相关类实例句柄,没法关闭,只能在使用完成后在web console关闭目标进程的agent。 |
欢迎投稿分享实践经验: #1079 。 另外,建议让arthas长驻运行,而不是多次启动。 |
有没有更详细的代码哇,前端这块按教程集成,没生效。sc admin 2.2.4 |
/**
|
各种404,感觉心态要蹦了: |
心态蹦了 |
这个额可以详细说一下吗? 通过JMX启动和关闭arthas |
如果有问题,需要解答,可以@我,要源码包也行 |
前言
Arthas 是 Alibaba开源的Java诊断工具,具有实时查看系统的运行状况;查看函数调用参数、返回值和异常;在线热更新代码;秒解决类冲突问题;定位类加载路径;生成热点;通过网页诊断线上应用。如今在各大厂都有广泛应用,也延伸出很多产品。
这里将介绍如何将Arthas集成进SpringBoot监控平台中。
SpringBoot Admin
为了方便SpringBoot Admin 简称为SBA
版本:1.5.x
1.5版本的SBA如果要开发插件比较麻烦,需要下载SBA的源码包,再按照spring-boot-admin-server-ui-hystrix的形式copy一份,由于JS使用的是Angular,本人尝试了很久,虽然掌握了如何开发插件,奈何不会Angular,遂放弃💀
版本:2.x
2.x版本的SBA插件开发,官网有介绍如何开发,JS使用Vue,方便很多,由于我们项目还在使用1.5,所以并没有使用该版本,请读者自行尝试
不能使用SBA的插件进行集成,那还有什么办法呢?😅
SBA 集成
鄙人的办法是将Arthas的相关文件直接copy到admin服务中,这些文件都来自arthas-all项目tunnel-server
arthas目录
该包下存放的是所有arthas的Java文件
spring-boot-admin-server-ui
该文件建在resources.META-INF下,admin会在启动的时候加载该目录下的文件
resources目录
新建页面,用于显示arthas控制台页面。
这个文件中有两个隐藏文本域,这两个用于连接arthas服务端,在页面加载的时候会自动将admin的url赋值给ip
修改了连接部分代码,参考一下
其他文件
jquery-3.3.1.min.js 新加Js
copy过来的js
popper-1.14.6.min.js
web-console.js
xterm.css
xterm.js
bootstrap.yml
这样子,admin端的配置完成了
客户端配置
需要对starter进行部分修改,
要将注册arthas的部分移除
,下面是修改后的文件。我这里是将修改后的文件重新打包成jar包,上传到私服,但有些应用会有无法加载arthasConfigMap的情况,可以将这两个文件单独放到项目的公共包中
为了实现开关效果,还需要一个文件用来监听配置文件的改变
我这里使用的是在SBA中改变环境变量,对应服务监听到变量改变,当监听
spring.arthas.enabled
为true的时候,注册arthas, 到下面是代码结束
到此可以愉快的在SBA中调式应用了,看看最后的页面
开启Arthas
在Select Application中选择应用
Connect 连接应用
DisConnect 断开应用
Release 释放配置文件
一些缺陷:
The text was updated successfully, but these errors were encountered: