root@0584b8941065:/# ./as.sh 1 help
Arthas script version: 3.0.2
Calculating attach execution time...
Attaching to 1 using version 3.0.4...
real 0m0.101s
user 0m0.163s
sys 0m0.044s
Attach success.
Connecting to arthas server... current timestamp is 1536953910
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
,---. ,------. ,--------.,--. ,--. ,---. ,---.
/ O \ | .--. ''--. .--'| '--' | / O \ ' .-'
| .-. || '--'.' | | | .--. || .-. |`. `-.
| | | || |\ \ | | | | | || | | |.-' |
`--' `--'`--' '--' `--' `--' `--'`--' `--'`-----'
wiki: https://alibaba.github.io/arthas
version: 3.0.4
pid: 1
timestamp: 1536953910961
$ Connection closed by foreign host.
请将user目录下的logs\arthas中的日志贴出来
试下重启目标进程,检查jvm版本是否一致。 可以试下新版本: https://alibaba.github.io/arthas/install-detail.html
试下重启目标进程,检查jvm版本是否一致。 可以试下新版本: https://alibaba.github.io/arthas/install-detail.html
jvm版本一致是啥意思,难道不是用机器上的 JRE 吗
01 2018-09-17 09:02:06.397 INFO [arthas-binding-thread:arthas] [] [] [] arthas version: 3.0.4
01 2018-09-17 09:02:07.243 INFO [nioEventLoopGroup-2-1:i.n.h.l.LoggingHandler] [id: 0x23a40edc] REGISTERED
01 2018-09-17 09:02:07.248 INFO [nioEventLoopGroup-2-1:i.n.h.l.LoggingHandler] [id: 0x23a40edc] BIND: /0.0.0.0:3658
01 2018-09-17 09:02:07.251 INFO [nioEventLoopGroup-2-1:i.n.h.l.LoggingHandler] [id: 0x23a40edc, L:/0.0.0.0:3658] ACTIVE
01 2018-09-17 09:02:07.254 INFO [nioEventLoopGroup-3-1:i.n.h.l.LoggingHandler] [id: 0x932823ba] REGISTERED
01 2018-09-17 09:02:07.254 INFO [nioEventLoopGroup-3-1:i.n.h.l.LoggingHandler] [id: 0x932823ba] BIND: /0.0.0.0:8563
01 2018-09-17 09:02:07.255 INFO [nioEventLoopGroup-3-1:i.n.h.l.LoggingHandler] [id: 0x932823ba, L:/0.0.0.0:8563] ACTIVE
01 2018-09-17 09:02:07.256 INFO [arthas-binding-thread:arthas] [as-server listening on network=3658;telnet=8563;http=6000;timeout={};] [] [] 0.0.0.0
01 2018-09-17 09:02:07.258 INFO [arthas-binding-thread:arthas] [] [] [] as-server started in 890 ms
01 2018-09-17 09:03:00.913 INFO [nioEventLoopGroup-2-1:i.n.h.l.LoggingHandler] [id: 0x23a40edc, L:/0.0.0.0:3658] READ: [id: 0x3ed5f7e0, L:/127.0.0.1:3658 - R:/127.0.0.1:39644]
01 2018-09-17 09:03:00.914 INFO [nioEventLoopGroup-2-1:i.n.h.l.LoggingHandler] [id: 0x23a40edc, L:/0.0.0.0:3658] READ COMPLETE
01 2018-09-17 09:03:00.961 INFO [nioEventLoopGroup-2-2:arthas] [] [] [] Loaded arthas keymap file from com/taobao/arthas/core/shell/term/readline/inputrc
01 2018-09-17 09:03:04.138 ERROR [nioEventLoopGroup-2-2:i.t.c.io_error] Reported io error => closing
java.lang.UnsupportedOperationException: Handle this case gracefully
at io.termd.core.util.Helper.computePosition(Helper.java:230) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.LineBuffer.getPosition(LineBuffer.java:266) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.LineBuffer.getCursorPosition(LineBuffer.java:252) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.LineBuffer$Update.<init>(LineBuffer.java:305) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.LineBuffer.update(LineBuffer.java:286) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline$Interaction.refresh(Readline.java:393) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline$Interaction.refresh(Readline.java:379) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline$Interaction.handle(Readline.java:278) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline$Interaction.access$200(Readline.java:189) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline.deliver(Readline.java:123) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline.access$500(Readline.java:41) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline$Interaction$2.accept(Readline.java:427) ~[arthas-core.jar:3.0.4]
at io.termd.core.readline.Readline$Interaction$2.accept(Readline.java:421) ~[arthas-core.jar:3.0.4]
at io.termd.core.tty.TtyEventDecoder.accept(TtyEventDecoder.java:93) ~[arthas-core.jar:3.0.4]
at io.termd.core.tty.TtyEventDecoder.accept(TtyEventDecoder.java:26) ~[arthas-core.jar:3.0.4]
at io.termd.core.tty.ReadBuffer.accept(ReadBuffer.java:44) ~[arthas-core.jar:3.0.4]
at io.termd.core.tty.ReadBuffer.accept(ReadBuffer.java:28) ~[arthas-core.jar:3.0.4]
at io.termd.core.io.BinaryDecoder.write(BinaryDecoder.java:117) ~[arthas-core.jar:3.0.4]
at io.termd.core.io.BinaryDecoder.write(BinaryDecoder.java:65) ~[arthas-core.jar:3.0.4]
at io.termd.core.telnet.TelnetTtyConnection.onData(TelnetTtyConnection.java:139) ~[arthas-core.jar:3.0.4]
at io.termd.core.telnet.TelnetConnection.flushData(TelnetConnection.java:267) ~[arthas-core.jar:3.0.4]
at io.termd.core.telnet.TelnetConnection.flushDataIfNecessary(TelnetConnection.java:257) ~[arthas-core.jar:3.0.4]
at io.termd.core.telnet.TelnetConnection.receive(TelnetConnection.java:108) ~[arthas-core.jar:3.0.4]
at io.termd.core.telnet.netty.TelnetChannelHandler.channelRead(TelnetChannelHandler.java:46) ~[arthas-core.jar:3.0.4]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [arthas-core.jar:3.0.4]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [arthas-core.jar:3.0.4]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [arthas-core.jar:3.0.4]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) [arthas-core.jar:3.0.4]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [arthas-core.jar:3.0.4]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [arthas-core.jar:3.0.4]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) [arthas-core.jar:3.0.4]
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) [arthas-core.jar:3.0.4]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:628) [arthas-core.jar:3.0.4]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:563) [arthas-core.jar:3.0.4]
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:480) [arthas-core.jar:3.0.4]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:442) [arthas-core.jar:3.0.4]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) [arthas-core.jar:3.0.4]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [arthas-core.jar:3.0.4]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_171]
这个异常没有遇到过,可以按这里的说明,debug下: https://github.com/alibaba/arthas/blob/master/CONTRIBUTING.md
最好是重启动目标java进程,看下是否稳定重现。
Are you using docker?
以前碰到过一个问题,docker执行的时候的环境变量中的宽度和高度没有带到docker里面去,导致arthas认为是长宽是80*24,与实际的长宽不符。需要在docker run和 exec的时候,带上环境变量中的宽度和高度
sudo docker run --rm -it -e COLUMNS=$COLUMNS -e LINES=$LINES -e TERM=$TERM docker-image-name
You can simply verify your current Terminal width and height with following commands:
$ stty size
60 120 # <= sample output
你好,这个问题后来解决了吗?在docker中安装Arthas,遇到了相同问题,查看log,报错也是一样的。
已解决,是docker中无法获取长宽的问题,可在docker中手动执行reset -w命令
手工指定终端的宽和高是否可以?
./as.sh --width 80 --height 30
Most helpful comment
你好,这个问题后来解决了吗?在docker中安装Arthas,遇到了相同问题,查看log,报错也是一样的。
已解决,是docker中无法获取长宽的问题,可在docker中手动执行reset -w命令