Comments (10)
status 101 是 websocket 协议升级状态码,正常。
arthas-tunnel-server 日志的报错提示没有对应的 arthas client 注册到 tunnel server 上, 先检查下agent的日志。
from skywalking-x-arthas.
from skywalking-x-arthas.
看agent日志, arthas attach时间超过了5秒。目前前端的逻辑是先调用 start 接口,然后5秒后连接arthas tunnel server,这时agent还没成功启动arthas导致了这个报错:
from skywalking-x-arthas.
agent没成功启动arthas,这个要怎么排查了?
好像是请求中的id参数不对(可能是因为arthas没有成功启动,这个id不能使用?)
websocket handshake complete, uri: /ws?method=connectArthas&[email protected]
我用日志中打印的id,去arthas tunnel server的web页面去请求,也是抛那个异常,页面也没有进入到arthas的控制台页面。
2023-11-01 10:02:09.517 INFO 50150 --- [rver-worker-3-1] c.a.a.t.server.TunnelSocketFrameHandler : websocket handshake complete, uri: /ws?method=connectArthas&[email protected]
2023-11-01 10:02:09.518 INFO 50150 --- [rver-worker-3-1] c.a.a.t.server.TunnelSocketFrameHandler : try to connect to arthas agent, id: [email protected]
2023-11-01 10:02:09.518 WARN 50150 --- [rver-worker-3-1] io.netty.channel.DefaultChannelPipeline : An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
java.lang.IllegalArgumentException: WebSocket close status code does NOT comply with RFC-6455: 2000
at io.netty.handler.codec.http.websocketx.CloseWebSocketFrame.requireValidStatusCode(CloseWebSocketFrame.java:202) ~[netty-codec-http-4.1.92.Final.jar!/:4.1.92.Final]
at io.netty.handler.codec.http.websocketx.CloseWebSocketFrame.<init>(CloseWebSocketFrame.java:69) ~[netty-codec-http-4.1.92.Final.jar!/:4.1.92.Final]
at com.alibaba.arthas.tunnel.server.TunnelSocketFrameHandler.connectArthas(TunnelSocketFrameHandler.java:219) ~[classes!/:3.7.1]
at com.alibaba.arthas.tunnel.server.TunnelSocketFrameHandler.userEventTriggered(TunnelSocketFrameHandler.java:71) ~[classes!/:3.7.1]
通过手动启动arthas,生成了一个id:HRINFHEF2OY7VVWGAAFK。用这个id去arthas tunnel server的web页面去请求,能够正常显示的
from skywalking-x-arthas.
可以适当增加agent服务的部署资源,目前看是启动时间过长,超过了前端设置的5s(当然这是可以优化的点,前端应该等待arthas启动成功并注册到tunnel server上再发起连接,我不熟悉前端,你如果有兴趣,欢迎你提pr)
from skywalking-x-arthas.
前端我也不太懂的。
老师,你说 agent 的日志中显示,arthas attach时间超过了5秒,这个在日志中是怎么看出来的。
另外再请教一下老师,调用了 start 接口后,是不是就启动了arthas;因为5s后还没有启动成功,导致连接arthas tunnel server失败。那arthas被唤起后(通过start 接口),最终是不是应该会启起来的,有方法验证吗?比如进到容器中,有没有方法可以看的;如果是arthas启动失败了,能查看失败的原因吗?感谢老师!
看agent日志, arthas attach时间超过了5秒。目前前端的逻辑是先调用 start 接口,然后5秒后连接arthas tunnel server,这时agent还没成功启动arthas导致了这个报错:
from skywalking-x-arthas.
安装后可以通过arthas tunnel server的管理页面查看agent是否成功注册,如果成功注册,可以认为arthas启动成功,报错是这个5s超时导致的。
from skywalking-x-arthas.
我测试了一下,好像只有在连接 tunnel server时指定 --app-name
参数才会在app列表也展示appname。
./as.sh --tunnel-server 'ws://10.1.xxx.xxx:7777/ws' --app-name testso
通过skywalking的arthas的页面点击connect后,arthas的管理页面没有显示app的信息,不知道是没指定 --app-name
不显示,还是arthas启动失败了压根没起来。
老师,还有其他方法可以排查吗?
from skywalking-x-arthas.
我测试了一下,好像只有在连接 tunnel server时指定
--app-name
参数才会在app列表也展示appname。./as.sh --tunnel-server 'ws://10.1.xxx.xxx:7777/ws' --app-name testso
通过skywalking的arthas的页面点击connect后,arthas的管理页面没有显示app的信息,不知道是没指定
--app-name
不显示,还是arthas启动失败了压根没起来。老师,还有其他方法可以排查吗?
agent启动arthas时会用skywalking配置的agent name作为app-name参数,从日志看是启动成功了的,我没有其他的排查方向了,可能需要你自己调试下代码。
from skywalking-x-arthas.
Related Issues (10)
- Security Concerns Regarding the Integration of Arthas via Skywalking Plugin HOT 1
- arthas和Skywalking agent能同时应用于同一个java应用吗
- skywalking集成arthas,ui部署有问题 HOT 4
- 不展示arthas图标 HOT 4
- 请问下载的arthas-tunnel-server-3.7.1.jar是放到arthas目录下启动嘛?还是随便放到啥目录都可以? HOT 6
- 作者你好,我用docker-compose安装的oap,想进入oap容器中把skywalking-webapp.jar使用cp dist/skywalking-webapp.jar ${your_oap_server_home}/webapp/复制到webapp中,但是发现没有这个目录 HOT 4
- 作者你好,请问arthas.zip我放入skywalking-agent中的arthas目录可以的嘛?需要配置环境变量嘛?skywalking-agent与oap无法连接上 HOT 12
- skywalking ui链接arthas 返回200但是不显示内容 HOT 3
- jdk11 的应用执行 arthas watch 命令失效
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from skywalking-x-arthas.