首页 > 其他分享 >Arthas使用技巧总结

Arthas使用技巧总结

时间:2024-01-10 11:05:45浏览次数:32  
标签:总结 技巧 使用 yourMethod YourClass Arthas com example

引言

Arthas是一个开源的Java诊断工具,由阿里巴巴开发。它主要用于定位应用的性能问题,如监控、追踪、诊断等。Arthas可以在不重启应用的情况下,动态地插拔其功能,非常适合生产环境中的故障排查和性能优化。以下是Arthas的一些实用技巧总结。

安装和启动Arthas

在使用Arthas之前,需要先进行安装。Arthas支持多种安装方式,最快捷的是使用在线安装脚本:

curl -L https://alibaba.github.io/arthas/install.sh | sh

安装完成后,启动Arthas:

java -jar arthas-boot.jar

之后选择你需要诊断的Java进程,Arthas就会附加到该进程上。

常用命令

1. dashboard: 实时查看系统的实时数据面板。

dashboard

2. thread: 查看当前Java进程的线程堆栈信息。

thread

3. jad: 反编译指定的类文件。

jad com.example.YourClass

4. watch: 查看方法的输入输出情况。

watch com.example.YourClass yourMethod "{params, returnObj, throwExp}"

5. trace: 追踪方法内部的调用路径,以及每个调用的耗时。

trace com.example.YourClass yourMethod

6. monitor: 监控方法的调用频率和耗时。

monitor -c 5 com.example.YourClass yourMethod

7. tt: 记录方法的执行信息,并允许条件回放。

tt -t com.example.YourClass yourMethod
高级使用技巧

1. 使用条件表达式 在使用watchtrace命令时,可以添加条件表达式,只有满足条件的方法调用才会被记录。

watch com.example.YourClass yourMethod "{params,returnObj}" "params[0]>100"

2. 使用ognl表达式 Arthas支持OGNL表达式(Object-Graph Navigation Language),可以用来表达复杂的逻辑。

ognl '@[email protected]("Hello, Arthas")'

3. 结合管道和grep使用 Arthas的输出可以通过Unix管道和grep等工具进行过滤,方便查找关键信息。

thread | grep "http-nio"

4. 使用异步命令 在分析长时间运行的命令时,可以使用async子命令来异步执行。

async -n 5 trace com.example.YourClass yourMethod
结论

Arthas是Java开发者和运维工程师的强大工具,它的灵活性和强大的诊断能力使得生产问题的诊断变得更加简单。合理利用Arthas的各种命令和技巧,可以极大提升故障排查的效率。

注意事项

虽然Arthas是一个非常强大的工具,但是在使用时还需要注意:

  • 不要在生产环境中长时间运行监控命令,可能会对应用性能产生影响。
  • 使用Arthas对方法进行追踪或监控时,要注意数据的隐私和安全性。
  • 在使用Arthas对线上问题进行排查时,需要确保操作的精确性和谨慎性,防止对业务造成影响。

标签:总结,技巧,使用,yourMethod,YourClass,Arthas,com,example
From: https://blog.51cto.com/u_16351957/9175264

相关文章

  • linux服务器下安装cbc和ipopt求解器【踩坑总结】
    安装CBC求解器CBC求解器是一个C++库,我们可以通过以下命令在Linux系统中进行安装:sudoapt-getinstallcoinor-cbc对于Windows操作系统,可以从CBC官方网站下载。安装完成后,我们可以使用CBC求解器来解决线性规划问题。例如用pyomo求解frompyomo.environimport*model=Con......
  • 数据可视化是如何帮助我们快速实现归纳总结的?
    在信息爆炸的时代,我们每天都面临着海量的数据,无论是个人生活中的各种记录,还是工作中的业务数据,都充斥着我们的日常。如何从这些数据中快速实现归纳总结,理清思路,找出关键信息?数据可视化应运而生,成为我们解读数据、洞察本质的得力助手。下面我就以可视化从业者的角度,来简单说说数据......
  • 记录--H5 视频兼容性处理总结
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助概述最近在负责公司官网的开发,在H5播放视频时,遇到很多兼容问题,所以总结下在H5播放时,遇到的兼容性问题,并封装一个Video的组件,便于在H5使用。测试先来测试一下在不同的浏览器,video有什么兼容性的问题,要测......
  • 你逛过凌晨四点的校园吗?--大四毕业生的年终总结
    前言:Hello大家好,我是Dream。又是一年的年终总结,我也迎来了自己的毕业季,没错,我马上要毕业啦!不知道大家是什么时候认识我的呢,又或者是第一次发现我~这一年,迎接过朝阳、拍下过夕阳,和路过的小狗摇脑袋,好好吃过每一顿饭,认真做着每一件很小的“大事”。这是我连续第三年提笔写年终......
  • 交换机环网组成总结
    环网的基本概念:交换机环网(也称为二层环路)主要是由交换机连接的局域网中产生的。这种环路通常是由于交换机在处理广播消息时产生的恶性循环。交换机在进行MAC地址表查询无果时,会将数据帧从除接收端口之外的其他端口发送出去,从而可能导致无限循环。环网交换机的特点:环网交换机可以构......
  • 3个搭建英语网站的技巧,独立站建站系统
    在当今数字化时代,拥有一个专业且具有吸引力的英语网站对于个人、企业或机构而言至关重要。然而,搭建一个成功的英语网站并非易事,需要细致入微的计划和技巧。在本文中,我们将探讨三个关键技巧,以及如何运用独立站建站系统,为您的英语网站打下坚实基础。1.精心策划:构建内容丰富的英语网......
  • Python 安装教程总结
    1、使用官方Python安装程序参考文档:Python在windows上安装配置方法(Python2和Python3)具体操作如下,Windows下安装Python,我们可以参考这个文档教程来安装,下载Python安装程序,选择与您操作系统版本相对应的安装程序。对于Windows用户,通常建议下载Windowsx86-64execu......
  • linux系统命令技巧ps -ef | grep main | grep -v grep | awk '{print $2}' | xargs --
    说明这个命令ps-ef|grepmain|grep-vgrep|awk'{print$2}'获取的结果为空,填入xargs参数的值也为空,因此报错。我们可以在ps-ef|grepmain|grep-vgrep|awk'{print$2}'|xargskill-9的基础上,加上xargs的参数:--no-run-if-empty,意思就是如果前半部分的命令......
  • 计算机体系结构之并行机制知识点总结
    cpu支持哪些指令集,是硬件结构决定的,还是软件方式实现的?CPU支持的指令集是由其硬件结构决定的。指令集是一组与硬件交互的底层机器指令,它定义了CPU能够执行的基本操作,包括算术运算、逻辑操作、内存访问等。不同的CPU架构具有不同的指令集。在硬件层面,CPU的设计决定了它支持......
  • elixir apply 结合 macro 一个方便的开发技巧
    此玩法实际在Phoenixelixir项目中使用比较多,以下是一个简单的示例示例代码login.exdefmoduleLogindodefdemoappdoquotedoimportunquote(__MODULE__)endenddefdalongdoIO.puts("dalongdemo")enddefmacro__using__(which)whenis_......