美文网首页
05 Arthas-官网教程学习日记

05 Arthas-官网教程学习日记

作者: AustinPup | 来源:发表于2022-06-24 11:53 被阅读0次

    1. 一句话

    Arthas是阿里开源的java诊断工具,在阿里系开源榜单中排前三(Ant,Arthas,Druid)。0624跟学了下其官网的教程✨地址

    🔴一些感悟:

    • 基于JVM的命令行方式诊断,在查看系统环境方面有用。
    • 命令复杂,查找学习有些曲线压力。
    • 整体感觉可用性一般(也许第一次接触)。

    🟡 一些借鉴:

    • 命令行的布局样式方面,可用在web上
    • PPT-TXT
      1.这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
      2.我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
      3.遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
      4.线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
      5.是否有一个全局视角来查看系统的运行状况?
      6.有什么办法可以监控到JVM的实时运行状态?
      7.怎么快速定位应用的热点,生成火焰图?
      8.怎样直接从JVM内查找某个类的实例?

      个人对第3.4.7感兴趣。

    2.学习笔记

    2.1 基础教程

    1. 安装、启动、退出
    2. Dashboard, 这里我们其实希望看到的是业务系统,而非部署环境的实时数据面板


      界面值得PPT
    3. Tread
    4. JVM加载类-Sc
    5. 反编译代码-Jad
    6. [函数级]的参数/返回值/异常信息-Watch
    7. 内存对象-Vmtool

    🔴一些感悟: 基础级教程,意义不大

    2.2 进阶教程

    1. JVM信息查看,涉及更多细节 sysprop,sysenv,jvm等
    2. 控制台的一些便利,自动补全之类
    3. 查看已加载的类,实际使用不大
    4. 反编译-jad
    5. 动态执行代码-ognl, 这个有参考
    6. 排查函数异常,日志就可以做到
    7. 更新热代码,比如更新日志等级,这个亮眼但要谨慎
    8. tt即 TimeTunnel,它可以记录下指定方法每次调用的入参和返回信息,可以查看接口的调用情况
    9. 排查调用栈、servlet函数、classloader的加载类, 意义不大
    10. 查找top N的线程
      🔴一些感悟: 除了第5条、7条亮眼些,其他的意义不大,第五条无非再触发下接口调用罢了,第7条比较谨慎。

    相关文章

      网友评论

          本文标题:05 Arthas-官网教程学习日记

          本文链接:https://www.haomeiwen.com/subject/smmvvrtx.html