Arthas Spring Boot Starter

只支持 spring boot 2

最新版本:查看

配置maven依赖:

  1. <dependency>
  2. <groupId>com.taobao.arthas</groupId>
  3. <artifactId>arthas-spring-boot-starter</artifactId>
  4. <version>${arthas.version}</version>
  5. </dependency>

应用启动后,spring会启动arthas,并且attach自身进程。

一键创建包含 Arthas Spring Boot Starter 的工程:点击

配置属性

比如,通过配置tunnel server实现远程管理:

  1. arthas.agent-id=hsehdfsfghhwertyfad
  2. arthas.tunnel-server=ws://47.75.156.201:7777/ws

全部支持的配置项:参考

参考:Arthas Properties

查看Endpoint信息

需要配置spring boot暴露endpoint:参考

假定endpoint端口是 8080,则通过下面url可以查看:

http://localhost:8080/actuator/arthas

  1. {
  2. "arthasConfigMap": {
  3. "agent-id": "hsehdfsfghhwertyfad",
  4. "tunnel-server": "ws://47.75.156.201:7777/ws",
  5. }
  6. }

非spring boot应用使用方式

非Spring Boot应用,可以通过下面的方式来使用:

  1. <dependency>
  2. <groupId>com.taobao.arthas</groupId>
  3. <artifactId>arthas-agent-attach</artifactId>
  4. <version>${arthas.version}</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>com.taobao.arthas</groupId>
  8. <artifactId>arthas-packaging</artifactId>
  9. <version>${arthas.version}</version>
  10. </dependency>
  1. import com.taobao.arthas.agent.attach.ArthasAgent;
  2. public class ArthasAttachExample {
  3. public static void main(String[] args) {
  4. ArthasAgent.attach();
  5. }
  6. }

也可以配置属性:

  1. HashMap<String, String> configMap = new HashMap<String, String>();
  2. configMap.put("arthas.appName", "demo");
  3. configMap.put("arthas.tunnelServer", "ws://127.0.0.1:7777/ws");
  4. ArthasAgent.attach(configMap);

注意配置必须是驼峰的,和spring boot的-风格不一样。spring boot应用才同时支持驼峰-风格的配置。