作用
- 查看JVM 和 系统 相关信息和状态。
- 以切面的方式对正在运行的包进行追踪和监控,不需要重启。(这一点用btrace也可以做到)
安装
Mac/linux 安装:
curl -L https://alibaba.github.io/arthas/install.sh | sh
启动Arthas:
./as.sh
启动的时候列出所有java进程,你需要选择一个你要监控的进程号。启动成功了是如下显示:
help
可以显示所有命令:image.png
使用示例:
dashboard
image.png
watch:
watch com.jccfc.merchant.openapi.controller.data.DataController getCreditScoreJxl "{params,returnObj}" -x 2
Press Q or Ctrl+C to abort.
Affect(class-cnt:2 , method-cnt:2) cost in 220 ms.
ts=2019-05-05 16:51:34; [cost=554.805778ms] result=@ArrayList[
@Object[][
@CreditScoreJxlRequest[CreditScoreJxlRequest(super=BaseRequest(channelId=ronghui001, timestamp=20190318202037, msgDigest=OTM0MzA2MzdGOTIwODQ0RTdGQzQ3MTlFQTJGMDJBREYxRjlCQUMzMg==, requestId=20190318202000370015), name=测试号, idNumber=22052319931030301X, telNumber=19900349586, applyId=null, proCode=ronghui, pbocQueryReason=01)],
],
@CreditScoreJxlResponse[
score=null,
],
]
ts=2019-05-05 16:51:34; [cost=706.49247ms] result=@ArrayList[
@Object[][
@CreditScoreJxlRequest[CreditScoreJxlRequest(super=BaseRequest(channelId=ronghui001, timestamp=20190318202037, msgDigest=OTM0MzA2MzdGOTIwODQ0RTdGQzQ3MTlFQTJGMDJBREYxRjlCQUMzMg==, requestId=20190318202000370015), name=测试号, idNumber=22052319931030301X, telNumber=19900349586, applyId=null, proCode=ronghui, pbocQueryReason=01)],
],
@CreditScoreJxlResponse[
score=null,
],
]
trace:
$ trace com.jccfc.merchant.openapi.controller.data.DataController getCreditScoreJxl
Press Q or Ctrl+C to abort.
Affect(class-cnt:2 , method-cnt:2) cost in 150 ms.
`---ts=2019-05-05 17:00:20;thread_name=http-nio-7081-exec-2;id=13;is_daemon=true;priority=5;TCCL=org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedWebappClassLoader@6d4d66d2
`---[398.278735ms] com.jccfc.merchant.openapi.controller.data.DataController$$EnhancerBySpringCGLIB$$674de665:getCreditScoreJxl()
`---[397.931322ms] org.springframework.cglib.proxy.MethodInterceptor:intercept()
`---[388.042468ms] com.jccfc.merchant.openapi.controller.data.DataController:getCreditScoreJxl()
+---[0.03531ms] com.jccfc.merchant.openapi.request.controller.data.CreditScoreJxlRequest:getChannelId()
+---[min=0.009957ms,max=0.01015ms,total=0.020107ms,count=2] com.jccfc.merchant.openapi.common.config.ChannelConfig:getChannels()
+---[min=0.004538ms,max=0.017125ms,total=0.021663ms,count=2] java.util.Map:containsKey()
+---[min=0.003197ms,max=0.010777ms,total=0.013974ms,count=2] java.util.Map:get()
+---[3.522071ms] com.jccfc.merchant.openapi.common.utils.ValidateUtil:checkMsgDigest()
+---[0.015853ms] com.jccfc.merchant.openapi.request.biz.data.BizCreditScoreJxlRequest:<init>()
+---[0.229565ms] com.jccfc.merchant.openapi.request.biz.data.BizCreditScoreJxlRequest:build()
+---[0.0116ms] org.springframework.util.StopWatch:<init>()
+---[0.01012ms] java.lang.StringBuilder:<init>()
+---[0.01427ms] com.jccfc.merchant.openapi.common.config.ThirdInterfaceIpConfig:getDataGroup()
+---[min=0.004797ms,max=0.01513ms,total=0.019927ms,count=2] java.lang.StringBuilder:append()
+---[0.009278ms] java.lang.StringBuilder:toString()
+---[min=0.496703ms,max=0.577788ms,total=1.074491ms,count=2] org.slf4j.Logger:info()
+---[1.426426ms] org.springframework.util.StopWatch:start()
+---[377.68213ms] org.springframework.web.client.RestTemplate:postForObject()
+---[0.026689ms] org.springframework.util.StopWatch:stop()
+---[0.012465ms] org.springframework.util.StopWatch:getTotalTimeSeconds()
+---[min=0.002991ms,max=0.027495ms,total=0.048413ms,count=7] java.lang.Double:valueOf()
+---[0.136067ms] com.jccfc.merchant.openapi.response.controller.data.CreditScoreJxlResponse:<init>()
+---[0.023127ms] com.jccfc.merchant.openapi.response.biz.data.BizCreditScoreJxlResponse:getStatus()
+---[0.008052ms] java.lang.Integer:intValue()
+---[min=0.003495ms,max=0.006388ms,total=0.009883ms,count=2] com.jccfc.merchant.openapi.response.biz.data.BizCreditScoreJxlResponse:getScore()
+---[0.050585ms] java.lang.String:valueOf()
+---[0.018126ms] java.lang.Double:parseDouble()
+---[0.011354ms] com.jccfc.merchant.openapi.request.controller.data.CreditScoreJxlRequest:getRequestId()
+---[0.008086ms] com.jccfc.merchant.openapi.response.biz.data.BizCreditScoreJxlResponse:getMsg()
+---[0.016138ms] com.jccfc.merchant.openapi.response.controller.data.CreditScoreJxlResponse:build()
+---[min=0.003563ms,max=0.009332ms,total=0.012895ms,count=2] java.util.HashMap:<init>()
+---[min=0.002803ms,max=0.053075ms,total=0.07541ms,count=8] java.util.Map:put()
+---[0.008751ms] com.jccfc.merchant.openapi.request.controller.data.CreditScoreJxlRequest:getIdNumber()
+---[0.008883ms] com.jccfc.merchant.openapi.response.controller.data.CreditScoreJxlResponse:setResponseStatus()
`---[0.018397ms] com.jccfc.merchant.openapi.response.controller.data.CreditScoreJxlResponse:setScore()
网友评论