alibaba / arthas

Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas
https://arthas.aliyun.com/
Apache License 2.0
35.35k stars 7.43k forks source link

ws连接tunnelserver发送matedata #1769

Open naah69 opened 3 years ago

naah69 commented 3 years ago

最近在集成springboot admin2和arthas tunnel server

看到了issue里面的两片帖子,打算加以改进。主要有以下两个点。

1 在websocket发送tunnelserver的地方加入metedata。

这个是因为希望在sba中将注册中心列表和tunnelserver中的agent列表进行一对一绑定。

在arthas页面通过筛选服务和实例来进行选择。

2 将sba和arthas 构建成插件

将两者封装成plugin,这样其他人也可以方便的引入进行使用

如果对以上两点完成开发,可以提pr吗

hengyunabc commented 3 years ago

欢迎提交PR

naah69 commented 3 years ago

欢迎提交PR

ok

hengyunabc commented 3 years ago

可以详细说明下 metadata 的作用是什么不?

naah69 commented 3 years ago

可以详细说明下 metadata 的作用是什么不?

主要是适配其他框架在调用时,传入的数据。

比如:在做arthas-tunner-server-spring-boot-admin-starter的时候,需要将注册中心的node与tunnel-client传过来的agent进行一对一绑定,而tunnel-client是只传送了agent的ip,port,agentid,appname,通过这几个无法进行一对一绑定,所以加入了metadata字段,

在arthas-spring-boot-start中将其他需要的数据转成json扔到metadata里面,一起发送过来。

其实就是对agent的元数据进行了扩展。

hengyunabc commented 3 years ago

我理解 metadata 和 spring-boot-admin-starter 应该是不强相关的。最好把 metadata 分为独立的PR提交。

naah69 commented 3 years ago

是的 spring-boot-admin-starter中是通过参数解析来实现的,那这个pr要拆成两个pr进行提交吗

hengyunabc commented 3 years ago

是的 spring-boot-admin-starter中是通过参数解析来实现的,那这个pr要拆成两个pr进行提交吗

是的,metadata 可以考虑合到主干上。 spring-boot-admin-starter 可能放到开发者独立维护的工程里比较好,放主仓库里不一定能处理得过来。

naah69 commented 3 years ago

是的 spring-boot-admin-starter中是通过参数解析来实现的,那这个pr要拆成两个pr进行提交吗

是的,metadata 可以考虑合到主干上。 spring-boot-admin-starter 可能放到开发者独立维护的工程里比较好,放主仓库里不一定能处理得过来。

好的 那我找时间分开下