萱草|又一款Java调试神器( 三 )


$ trace #类名#方法名
萱草|又一款Java调试神器对于执行耗时相对较长的方法 , 调用链路耗时属性会高亮显示方便排查
萱草|又一款Java调试神器4、JVM (jvm实时运行状态 , 内存使用情况等)
$ jvm RUNTIME-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- MACHINE-NAME28679@iz2zehzeir87zi8q99krk1zJVM-START-TIME2019-03-28 17:32:16MANAGEMENT-SPEC-VERSION1.2 SPEC-NAMEJava Virtual Machine SpecificationSPEC-VENDOROracle CorporationSPEC-VERSION1.8 VM-NAMEJava HotSpot(TM) 64-Bit Server VMVM-VENDOROracle CorporationVM-VERSION25.191-b12INPUT-ARGUMENTS[]CLASS-PATHdemo-0.0.1-SNAPSHOT.jarBOOT-CLASS-PATH/usr/local/jdk/jre/lib/resources.jar:/usr/local/jdk/jre/lib/rt.jar:/usr/local/jdk/jre/lib/sunrsasign.jar:/usr/local/jdk/jre/lib/jsse.jar:/usr/local/jdk/jre/lib/jce.jar:/usr/local/jdk/jre/lib/charsets.jar:/usr/local/jdk/jre/lib/jfr.jar:/usr/local/jdk/jre/classesLIBRARY-PATH/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- MACHINE-NAME28679@iz2zehzeir87zi8q99krk1zJVM-START-TIME2019-03-28 17:32:16MANAGEMENT-SPEC-VERSION1.2 SPEC-NAMEJava Virtual Machine SpecificationSPEC-VENDOROracle CorporationSPEC-VERSION1.8 VM-NAMEJava HotSpot(TM) 64-Bit Server VMVM-VENDOROracle CorporationVM-VERSION25.191-b12INPUT-ARGUMENTS[]CLASS-PATHdemo-0.0.1-SNAPSHOT.jarBOOT-CLASS-PATH/usr/local/jdk/jre/lib/resources.jar:/usr/local/jdk/jre/lib/rt.jar:/usr/local/jdk/jre/lib/sunrsasign.jar:/usr/local/jdk/jre/lib/jsse.jar:/usr/local/jdk/jre/lib/jce.jar:/usr/local/jdk/jre/lib/charsets.jar:/usr/local/jdk/jre/lib/jfr.jar:/usr/local/jdk/jre/classesLIBRARY-PATH/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib5、watch
当前方法执行数据观测 , 能观察到的范围为:返回值、抛出异常、入参
$ trace #类名#方法名 "{params,target,returnObj , throwExp }" OGNL 表达式 {params,target,returnObj , throwExp }throwExp:异常params :入参(数组) , 单个参数params【0】returnObj:返回值$ watch com.example.demo.controller index2 "{params,target,returnObj}" -x 5Press Q or Ctrl+C to abort.Affect(class-cnt:1 , method-cnt:1) cost in 81 ms.ts=2019-03-29 14:24:14; [cost=1000.746582ms] result=@ArrayList[@Object[][@String[辛志富],],@controller[],@String[index2],]6、stack
当前方法被调用的路径 , 显示当前方法被那些方法调用
$ monitor -c 4 com.example.demo.controller uuidTwoPress Q or Ctrl+C to abort.Affect(class-cnt:1 , method-cnt:1) cost in 56 ms. timestampclassmethodtotalsuccessfailavg-rt(ms)fail-rate--------------------------------------------------------------------------------------------------------2019-03-29 14:55:40com.example.demo.controlleruuidTwo7700.180.00%


推荐阅读