使用IDEA调试Arthas

准备工作

准备调试使用的代码

arthas源码下载

写一做供我们调试使用的代码. 或者直接使用arthas源码里的 demo.MathGame 也可以.

debug运行

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar arthas-demo.jar

配置远程调试 arthas

  1. 打开idea配置

在这里插入图片描述

  • 注: 端口号与debug运行时的端口号一致确认
  1. 点击 debug 运行

在这里插入图片描述
com.taobao.arthas.agent334.AgentBootstrap#main 方法上设置断点:

在这里插入图片描述

  1. 根据官方文档运行arthas即可

找到 arthas 目录. 一般在当前用户目录下.arthas, 运行如下:

./as.sh

启动后即可看到idea停留在第2步设置的断点上. 说明可以进行调试arthas了.

参考官方文档

在 IntelliJ IDEA使用 Arthas 进行远程调试,可以结合 Java 的远程调试机制与 Arthas 提供的命令行功能实现。Arthas 是阿里巴巴开源的一款 Java 诊断工具,支持运行时查看类信息、方法调出耗时、线程状态等[^1]。 以下是具体的配置步骤: ### 启动目标应用并启用远程调试 确保目标应用启动时启用了远程调试参数,通常是在 JVM 启动参数中添加以下内容: ```bash -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 ``` 其中 `address` 指定的是调试端口,如 `5005`。这一步是标准的 Java 远程调试设置。 ### 在服务器上安装并启动 Arthas 下载 Arthas 的 `arthas-boot.jar` 文件,并通过如下命令启动: ```bash java -jar arthas-boot.jar ``` 选择需要诊断的目标 Java 应用进程编号后,Arthas 会自动 attach 到该进程中。 ### 配置 IntelliJ IDEA 的远程调试连接 在 IntelliJ IDEA 中创建一个 Remote JVM Debug 配置: 1. 打开 **Run/Debug Configurations** 窗口。 2. 点击加号(+)按钮,选择 **Remote JVM Debug**。 3. 填写目标主机的 IP 地址和调试端口号(例如 `5005`)。 4. 设置适当的模块和工作目录。 5. 点击 Apply 并保存配置。 ### 开始远程调试 启动调试会话后,IDEA 将连接到远程 JVM,此时可以正常设置断点、查看变量值和调用堆栈。 此外,在 Arthas 中可以使用诸如 `watch`, `trace`, `jad` 等命令来实时分析运行中的代码逻辑和性能瓶颈。例如: ```bash watch com.example.MyClass myMethod '{params, returnObj}' -x 2 ``` 这条命令会监控 `MyClass` 类中的 `myMethod` 方法,显示其参数和返回值。 ### 注意事项 - 确保防火墙允许调试端口通信。 - 如果 Arthas 和远程调试端口在同一台机器上,可以直接使用本地地址;否则需确保网络可达性。 - 调试过程中,避免对生产环境造成不必要的影响。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值