主管让我排查线上P0事故原因,我的思路(七)

主管让我排查线上P0事故原因,我的思路(七)命令:ognl作用:执行Ognl举例:执行静态方法ognl ‘@java.lang.System@out.println(“h

大家好,欢迎来到IT知识分享网。

命令:ognl

作用:执行Ognl

举例:

  • 执行静态方法

ognl ‘@java.lang.System@out.println(“hello”)’

  • 获取静态属性

ognl ‘@demo.MathGame@random’

  • 执行简单表达式

ognl ‘#value1=@System@getProperty(“java.home”), #value2=@System@getProperty(“java.runtime.name”), {#value1, #value2}’

  • 指定Classloader

ognl -c 3d8c7aca ‘1+1’

结果解析:

Ognl Advice:

loader

本次调用类所在的ClassLoader

clazz

本次调用类的Class引用

method

本次调用方法反射引用

target

本次调用类的实例

params

本次调用参数列表,这是一个数组,如果方法是无参方法则为空数组

returnObj

本次调用返回的对象。当且仅当isReturn==true成立时候有效,表明方法调用是以正常返回的方式结束。如果当前方法无返回值void,则值为null

throwExp

本次调用抛出的异常。当且仅当isThrow==true成立时有效,表明方法调用是以抛出异常的方式结束。

isBefore

辅助判断标记,当前的通知节点有可能是在方法一开始就通知,此时isBefore==true成立,同时isThrow==false和isReturn==false,因为在方法刚开始时,还无法确定方法调用将会如何结束。

isThrow

辅助判断标记,当前的方法调用以抛异常的形式结束。

isReturn

辅助判断标记,当前的方法调用以正常返回的形式结束。

命令:pwd

作用:查看当前工作目录

命令:Exit/Quit

作用:Exit或Quit退出Arthas Session(Arthas Server还在目标进程执行)

上一篇:主管让我排查线上P0事故原因,我的思路(六)

下一篇:主管让我排查线上P0事故原因,我的思路(八)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/52268.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信