引入Arthas Spring Boot Starter工程后本地启动多个应用报错

226 阅读1分钟

我欲成仙-快乐齐天.png

问题现象

项目引入 arthas 依赖后,本地启动1个服务没问题,当启动2个服务时,第2个服务报错如下:

<dependency>
	<groupId>com.taobao.arthas</groupId>
	<artifactId>arthas-spring-boot-starter</artifactId>
	<version>3.5.4</version>
</dependency>

Arthas failed to bind telnet or http port! Telnet port: 3658, http port: 8563

解决方案

官方给出答案:

增加配置

# 如果配置 arthas.telnetPort为 -1 ,则不listen telnet端口。arthas.httpPort类似
arthas.telnetPort=-1
arthas.httpPort=-1

原因

服务器启动 Arthas Server 后,其他人可以使用 telnet 远程连接上去进程诊断,telnet 的默认ip 和 端口 分别是是 127.0.0.1 和 3658。
Arthas 目前支持 两种连接方式,其中Web Console方式会在程序启动后attach 自身进程,用户在 attach 成功之后,可以直接访问:http://127.0.0.1:8563/。
因此增加配置后即可解决多服务无法一起启动的问题。

github:github.com/alibaba/art…
Arthas Properties:arthas.aliyun.com/en/doc/arth…

公众号推荐