zoukankan      html  css  js  c++  java
  • Java诊断工具Arthas

    Java诊断工具Arthas

    1. Arthas简介

    Arthas是阿里开源的一个线上java诊断工具,发现阿里还是挺喜欢开源一些技术的,造福人类。昨天试用了一下,发现真是强大,解决了我工作两年的很多困扰,有点相见恨晚的感觉。

    根据官网的说明,它能解决下面的问题:

    当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:

    1. 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
    2. 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
    3. 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
    4. 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
    5. 是否有一个全局视角来查看系统的运行状况?
    6. 有什么办法可以监控到JVM的实时运行状态?

    Arthas采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。

    2. Arthas安装

    在Linux下直接执行curl -L https://alibaba.github.io/arthas/install.sh | sh,然后执行./as.sh就可以进入到Arthas的命令行界面。

    3. Arthas试用

    安装完后试用了它的监控相关的功能,以后调试就不那么麻烦了。

    3.1 monitor命令

    monitor可以对某个类的某个方法进行周期性监控,来输出方法的平均响应时间,成功失败次数,调用次数等。具体使用请见:https://alibaba.github.io/art...

    3.2 watch命令

    watch可以监控某个方法的出入参,异常信息等,具体使用请见:https://alibaba.github.io/art...

    3.3 trace命令

    trace可以输出方法内部调用关系,并打印方法内部每个调用的耗时,具体使用请见:https://alibaba.github.io/art...

    3.4 stack命令

    stack可以输出方法的整个调用路径,具体使用请见:https://alibaba.github.io/art...

    3.5 tt命令

    记录方法每次的调用出入参和异常信息,并且完整保留调用现场,可以再次模拟调用。具体使用请见:https://alibaba.github.io/art...

    当然除此之外还有很丰富的其他功能,比如JVM,ClassLoader相关的命令。

  • 相关阅读:
    node下运行ts
    npm的一些基本配置设置
    windws 安装jdk
    java jdbc连接mysql
    struts2+jquery 实现ajax登陆
    struts2 零配置
    java 生成UUID
    ubuntu 换源
    ubuntu下安装redis
    安装 vsftpd
  • 原文地址:https://www.cnblogs.com/qixidi/p/10085434.html
Copyright © 2011-2022 走看看