zoukankan      html  css  js  c++  java
  • Arthas

    Arthas是阿里开源的一个java程序监控诊断工具。https://arthas.gitee.io/index.html

    可以帮助我们监控程序运行中一些信息。

    Arthas的使用我们可以直接使用jar包和我们的的程序一并运行,它会attach我们自己的程序进程,如果是springboot项目也可以在项目中引入依赖使用。

    一.直接使用jar包

    1.https://arthas.aliyun.com/arthas-boot.jar  下载Arthas jar包

    2.启动我们自己的程序  jps查看查看到PID是7616

     3.直接启动下载好的arthas jar包:  java -jar arthas-boot.jar  它也会列出来所有的java程序的pid

    4.输入想要attach 的进程id前面的序号 就可以成功进入arthas的控制台了,就可以对我们程序进行诊断和

     5.详细的一些使用指令可以查看官方文档https://arthas.gitee.io/quick-start.html    https://arthas.gitee.io/advanced-use.html

    比如我们可以使用jad指令来反编译,看看我们运行的代码是否是正确版本的代码:jad  类的全路径名

     还可以使用watch指令进行方法执行数据的观测:watch 全路径类名 方法名 观察表达式  -x 3   

    观察表达式匹配ognl表达式,观察的维度也比较多,主要体现在参数 advice 的数据结构上。Advice(https://arthas.gitee.io/advice-class.html) 参数最主要是封装了通知节点的所有信息

    比如:watch com.nijunyang.arthas.controller.Controller test "{params,returnObj}" -x 3

    查看test方法的入参和出参,-x表示的是遍历结果深度默认1,只会打印对象的堆地址,看不到具体的属性值

    我们请求这个接口的地址,查看一下arthas监控到的结果信息。

     2会打印结果的属性值的信息

     3会输出入参属性值和结果属性值

     还可以使用jvm指令查看jvm的信息等

    二.springboot中使用

    在springboot中使用需要通过web console来进行交互使用。arthas tunnel server 连接远程 arthas,这里使用tunnel server直接使用arthas源码中的工程启动的,arthas源码:https://gitee.com/arthas/arthas.git

    1.下载源码启动tunnel-server工程

    tunnel-server默认端口是8080,可以自己去配置端口,启动之后访问8080端口就可以看到web console了

     

    2.springboot工程加入依赖,添加配置

            <dependency>
                <groupId>com.taobao.arthas</groupId>
                <artifactId>arthas-spring-boot-starter</artifactId>
                <version>3.4.8</version>
            </dependency>
    arthas:
      agent-id: hsehdfsfghhwertyfad
      tunnel-server: ws://127.0.0.1:7777/ws

    3.使用web console连接使用

    连接的port和agentId和工程中配置的一致即可:

     4.一样使用arthas的指令即可进行监控查看了

     

     具体的一些指令的使用查阅官方文档即可:https://arthas.gitee.io/index.html

  • 相关阅读:
    字符串匹配算法之SimHash算法
    Shell 判断
    剑指offer 面试题6:重建二叉树
    字符串匹配算法之BF(Brute-Force)算法
    Python变量/运算符/函数/模块/string
    trie树
    AWK文本处理工具(Linux)
    Linux 进程间通信(一)
    Nginx学习笔记(八) Nginx进程启动分析
    进程状态转换、CPU调度算法
  • 原文地址:https://www.cnblogs.com/nijunyang/p/14731475.html
Copyright © 2011-2022 走看看