• arthas进阶版排查问题之idea插件工具操作


    arthas前面的文章讲了怎么去使用命令排查线上问题,线上出了问题就需要我们去排查问题和处理程序异常,但是线上一般出问题不太好解决,总有一些奇怪的问题,当然很多场景是测试测试不到的,我们不能百分百保证线上不出问题,但是出了问题就需要排查问题。那么定位问题的核心在于分析业务场景,出现问题的根本在哪里,分析问题也很重要,当然定位不到问题我们可以借助第三方工具去排查和解决。

    idea插件工具:arthas idea

     为啥要使用插件因为在线上问题出现你可以快速使用命令去监听,因为arthas的命令比较多常用的trace,monitor,watch都是常用命令。当然我们在实际场景下去写命令显得有点麻烦,这个时候就用到我们的插件了。

    右键属性值或者注入的配置都可以:

     这里面包含了全部使用命令,比如watch,trace,monitor,statck,还有springbean上下文,静态方法等。

     watch com.*.service.impl.WechatAuthEventServiceImpl *  '{params,returnObj,throwExp,target.wechatConfig}'  -n 5  -x 3 'method.initMethod(),method.constructor!=null || !@java.lang.reflect.Modifier@isStatic(method.method.getModifiers())'

    trace -E com.*.provider.service.impl.WechatAuthEventServiceImpl \\* -n 5  --skipJDKMethod false '1==1'

    monitor com.*.service.impl.WechatAuthEventServiceImpl *  -n 10  --cycle 10 

    stack com.v*.service.impl.WechatAuthEventServiceImpl *  -n 5 

    不是所有的熟悉都可以监听的,我们程序执行的结果我们也会命令监听不了,

     这时候我们可以使用:vmtool 命令去打印我们对象属性值,通过

    vmtool -x 3 --action getInstances --className org.springframework.core.env.ConfigurableEnvironment  --express '#standardServletEnvironment=instances[0],#allProperties={},#propertySourceIterator=#standardServletEnvironment.getPropertySources().iterator(),#propertySourceIterator.{#key=#this.getName(),#allProperties.add("                "),#allProperties.add("------------------------- name:"+#key),#this.getSource() instanceof java.util.Map ?#this.getSource().entrySet().iterator.{#key=#this.key,#allProperties.add(#key+"="+#standardServletEnvironment.getProperty(#key))}:#{}},#allProperties' 

    JVM(TM) Tool Interface 1.2.3

    这样可以快速的定位和追踪我们程序执行的一些参数和内存信息。学会了吗?

     ————没有与生俱来的天赋,都是后天的努力拼搏(我是小杨,谢谢你的关注和支持)

  • 相关阅读:
    面试了1个月连续失败4次,自动化测试真没想象的那么简单
    专业128分总分390+上岸中山大学884信号与系统电通院考研经验分享
    三、RTMP协议 视频Chunk和音频Chunk到底长啥样?
    暗云III木马技术分析
    MySQL牛客网刷题3
    图像处理:Python使用OpenCV进行图像锐化 (非锐化掩模、拉普拉斯滤波器)
    【无标题】
    Knowledge related to the enterprise
    会议OA项目之会议排座功能&&会议送审的实现
    焦炉加热系统简述
  • 原文地址:https://blog.csdn.net/qq_39751120/article/details/128026060