jdk-arthas使用

 arthas命令列表 | arthas

1、要查实例的大小

#要查看Arthas中实例的大小,可以使用Arthas的jad命令结合metrics命令来实现。以下是具体的步骤:

#在终端中启动Arthas的客户端:arthas <pid>,其中<pid>是你要监控的Java进程的进程ID。

#在Arthas的命令行界面(REPL)中,使用jad命令查看指定类的字节码信息。例如,要查看com.example.User类的字节码信息,可以输入:jad com.example.User。

#在字节码信息中找到需要查看实例大小的构造方法。构造方法的特点是没有返回值。 例如,对于以下构造方法:

public User(String name, int age) {
    this.name = name;
    this.age = age;
}
#可以查找到public User(String name, int age)这一行。

#记住构造方法的完整路径,然后使用metrics命令查看该构造方法所创建的实例大小。例如,要查看com.example.User类中public User(String name, int age)构造方法所创建的实例大小,可以输入:

metrics -d -b com.example.User.<init>(java.lang.String,int)
#其中,-d参数表示以对象形式展示结果,-b参数表示包名与方法名之间的分隔符使用.。

#Arthas会显示出被监控的Java进程中,该构造方法所创建的实例的大小信息。

#注意,步骤2和步骤3需要根据你要查看的类及其构造方法的具体情况进行适配。

 

2、arthas常用命令

#监听方法在一个时间段内的请求量
monitor -c 5 com.tower.vms.fileupload.controller.FileUploadController upLoadFuJianHUrl

### 如何在 Arthas指定 JDK 版本 当使用 Arthas 进行诊断时,默认情况下会采用目标 Java 应用程序所运行的 JVM 的版本。然而,有时可能希望或需要通过特定版本的 JDK启动 Arthas 或者确保与应用程序兼容。 #### 使用 `JAVA_HOME` 环境变量设置 JDK 版本 为了使 Arthas 使用特定版本的 JDK,可以通过设定 `JAVA_HOME` 环境变量指向所需的 JDK 安装目录来实现这一点。这适用于大多数 Linux 和 macOS 用户以及 Windows 上的部分情况: ```bash export JAVA_HOME=/path/to/your/preferred/jdk/version ``` 此操作应在启动 Arthas 前完成,并且该路径应替换为实际安装的目标 JDK 路径[^2]。 #### Docker 环境下的配置方法 对于基于容器化部署的应用场景,比如使用 Docker 构建镜像并运行应用服务的情形,则可以在构建阶段定义基础镜像时选择合适的 OpenJDK 镜像作为基底;而在利用 Compose 文件管理多容器项目的情况下,也可以直接修改 docker-compose.yml 文件内的相应字段以指明要加载的 JAR 包位置及其依赖项,包括但不限于自定义的 JVM 启动参数等信息[^3]。 需要注意的是,在某些特殊环境下(例如受限于安全策略),即使设置了上述环境变量也可能无法改变 Arthas 实际使用JDK 版本。此时建议确认官方文档是否有额外说明或是尝试其他替代方案,如调整宿主机上的默认 JDK 设置等方式解决此类问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荆茗Scaler

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值