Arthas Spring Boot Starter
西瓜猿
# Arthas Spring Boot Starter
只支持 spring boot 2
配置 maven 依赖:
<dependency>
<groupId>com.taobao.arthas</groupId>
<artifactId>arthas-spring-boot-starter</artifactId>
<version>${arthas.version}</version>
</dependency>
1
2
3
4
5
2
3
4
5
应用启动后,spring 会启动 arthas,并且 attach 自身进程。
一键创建包含 Arthas Spring Boot Starter 的工程:点击
# 配置属性
比如,通过配置 tunnel server 实现远程管理:
arthas.agent-id=hsehdfsfghhwertyfad
arthas.tunnel-server=ws://47.75.156.201:7777/ws
1
2
2
全部支持的配置项:参考 (opens new window)
默认情况下,arthas-spring-boot-starter 会禁掉
stop
命令。
# 查看 Endpoint 信息
需要配置 spring boot 暴露 endpoint:参考 (opens new window)
假定 endpoint 端口是 8080,则通过下面 url 可以查看:
http://localhost:8080/actuator/arthas
{
"arthasConfigMap": {
"agent-id": "hsehdfsfghhwertyfad",
"tunnel-server": "ws://47.75.156.201:7777/ws",
}
}
1
2
3
4
5
6
2
3
4
5
6
# 非 spring boot 应用使用方式
非 Spring Boot 应用,可以通过下面的方式来使用:
<dependency>
<groupId>com.taobao.arthas</groupId>
<artifactId>arthas-agent-attach</artifactId>
<version>${arthas.version}</version>
</dependency>
<dependency>
<groupId>com.taobao.arthas</groupId>
<artifactId>arthas-packaging</artifactId>
<version>${arthas.version}</version>
</dependency>
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
import com.taobao.arthas.agent.attach.ArthasAgent;
public class ArthasAttachExample {
public static void main(String[] args) {
ArthasAgent.attach();
}
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
也可以配置属性:
HashMap<String, String> configMap = new HashMap<String, String>();
configMap.put("arthas.appName", "demo");
configMap.put("arthas.tunnelServer", "ws://127.0.0.1:7777/ws");
ArthasAgent.attach(configMap);
1
2
3
4
2
3
4
注意配置必须是
驼峰
的,和 spring boot 的-
风格不一样。spring boot 应用才同时支持驼峰
和-
风格的配置。