zoukankan      html  css  js  c++  java
  • arthas 线上排查常用命令

    下载arthas-boot.jar,然后用java -jar的方式启动:

    curl -O https://arthas.aliyun.com/arthas-boot.jar
    java -jar arthas-boot.jar
    

    查看方法内部执行堆栈

    方法内部调用路径,并输出方法路径上的每个节点上耗时

    trace com.xxx.manage.impl.UserServiceImpl getUser
    

    查看方法出入参

    watch com.xxx.manage.impl.UserServiceImpl getUser '{params,returnObj,throwExp}' -x 3
    

    查找类的 classLoaderHash

    sc -d com.xxx.manage.util.SpringContext
    

    执行类的方法

    ognl -c  31221be2 '@com.xxx.manage.util.SpringContext@getBean("userService")' -x 1
    

    获取spring配置

    ognl -c  31221be2 '#context=@com.xxx.manage.util.SpringContext@applicationContext,#context.getEnvironment().getProperty("ca.enable")'
    

    或者

    tt -t org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter invokeHandlerMethod
    tt -i 1000 -w 'target.getApplicationContext().getBean("baiduSchedule").startSchedule()'
    

    查看方法被调用堆栈

    很多时候我们都知道一个方法被执行,但这个方法被执行的路径非常多,或者你根本就不知道这个方法是从那里被执行了,此时你需要的是 stack 命令。

    stack com.xxx.manage.impl.UserServiceImpl getUser
    

    查看最高占用的线程

    thread -n 3
    

    查看当前JVM的系统属性

    sysprop
    

    查看当前JVM的环境属性

    sysenv
    

    查看,更新VM诊断相关的参数

    vmoption
    
    有问题请联系hudcan@sina.com 个人网站:http://ext.123456cc.cc
  • 相关阅读:
    linux系统日志使用
    C# progressbar 用法
    python 新时代
    linux 常用命令 集锦
    c# DirectoryInfo类 详解
    哈佛(转)
    寒门难再出贵子
    排序算法
    JavaScript弹出框
    js中innerHTML与innerText的用法与区别
  • 原文地址:https://www.cnblogs.com/mysgk/p/15701491.html
Copyright © 2011-2022 走看看