Arthas可以对线上jar中的代码进行断点查看

简介: Arthas可以对线上jar中的代码进行断点查看

Arthas可以对线上jar中的代码进行断点查看。Arthas是一款轻量级Java诊断工具,它可以通过Java Instrumentation技术动态注入代码,实现在运行时对Java应用程序进行调试和诊断。

您可以通过以下步骤在Arthas中对线上jar中的代码进行断点查看:

  1. 登录到服务器,使用Arthas的attach命令连接到目标Java进程。例如,如果您想连接到进程ID为1234的Java进程,可以使用以下命令:

    $ ./arthas.sh 1234
    
  2. 使用jad命令反编译需要调试的类。例如,如果您需要调试com.example.demo.MyClass类,可以使用以下命令:

    $ jad com.example.demo.MyClass
    

    这将会在控制台上输出MyClass类的反编译代码。

  3. 使用trace命令对需要调试的方法进行追踪。例如,如果您需要对com.example.demo.MyClass类中的test方法进行调试,可以使用以下命令:

    $ trace com.example.demo.MyClass test
    

    这将会在test方法中设置一个断点,并在每次方法被调用时输出调用栈信息。

  4. 在需要调试的代码位置触发断点。当程序执行到该断点时,Arthas会中断程序的执行,并显示当前线程的调用栈信息。

通过以上步骤,您可以在Arthas中对线上jar中的代码进行断点查看。需要注意的是,由于Arthas是在运行时动态注入代码,因此对于某些特殊的应用场景,可能会存在一些限制和不兼容性。

目录
相关文章
|
Arthas 存储 运维
记Arthas实现一次CPU排查与代码热更新
线上代码经常会出现CPU占用过高的情况,按以往经验我会使用top指令,进一步借助于jstack去查看具体信息从而进行问题排查,但基本上都逃不过需要重新发包的局面,即使是一个增量包,应用也需要短暂停启。后来运维大兄弟让我试一下Arthas,说是可以进行代码的热更新操作,正好来试一下。
694 0
|
Arthas 存储 运维
60-微服务技术栈(高级):在线检测工具Arthas(实现CPU排查与代码热更新)
线上代码经常会出现CPU占用过高的情况,按以往经验我会使用top指令,进一步借助于jstack去查看具体信息从而进行问题排查,但基本上都逃不过需要重新发包的局面,即使是一个增量包,应用也需要短暂停启。后来运维大兄弟让我试一下Arthas,说是可以进行代码的热更新操作,正好来试一下。
1090 0
|
Arthas 小程序 Java
Arthas,热更新线上代码神器
日常开发过程中,可能会遇到小问题,本地代码改完后,总得重新打包部署,线上代码才会生效,这样太麻烦了,这个时候就可以考虑使用Arthas(阿尔萨斯)工具来热更新线上代码,先使线上的功能能使用,后面有大的迭代版本的时候再打包部署。笔者使用了这个工具,发现这个操作实在是骚的很,太好用了,在此做下笔记,以供后续参考。
1426 0
Arthas,热更新线上代码神器
|
Arthas 监控 Java
不停机替换线上代码? 你没听错,Arthas它能做到
不停机替换线上代码? 你没听错,Arthas它能做到
1493 0
不停机替换线上代码? 你没听错,Arthas它能做到
|
Arthas Java 测试技术
记一次使用 Arthas 热更新线上代码
引用参考第二条 - Arthas提醒您:诊断千万条,规范第一条,热更不规范,同事两行泪
3037 0
记一次使用 Arthas 热更新线上代码
|
Arthas 存储 运维
记 Arthas 实现一次 CPU 排查与代码热更新
线上代码经常会出现 CPU 占用过高的情况,按以往经验我会使用 top 指令,进一步借助于 jstack 去查看具体信息从而进行问题排查,但基本上都逃不过需要重新发包的局面,及时是一个增量包,应用也需要短暂停启。后来运维大兄弟让我试一下 Arthas,说是可以进行代码的热更新操作,正好来试一下。
记 Arthas 实现一次 CPU 排查与代码热更新
|
Arthas 监控 IDE
Arthas 全攻略:让调试变得简单
Arthas 全攻略:让调试变得简单
729 7
|
Arthas 监控 安全
arthas如何跟踪某个方法?并查看方法的入参和出参?
arthas如何跟踪某个方法?并查看方法的入参和出参?
3242 6
|
Arthas 监控 Java
揭秘Arthas:如何轻松查看入参的命令
【Arthas教程】了解阿里开源的Java诊断工具Arthas,用于实时监控和诊断应用。使用`watch`命令查看方法入参和返回值,如`watch 类全名 方法名 "{params, returnObj}" -x 展开层数`。优势在于实时性、易用性、灵活性和高效性。提升使用效果需熟悉基本及高级命令,并多实践。尝试Arthas,提升Java开发效率!我是木头左,一起学习进步!
揭秘Arthas:如何轻松查看入参的命令
|
Arthas 监控 Java
Arthas profiler(使用async-profiler对应用采样,生成火焰图)
Arthas profiler(使用async-profiler对应用采样,生成火焰图)
2187 10