摘要:目標(biāo)群體有時候突然一個問題反饋上來,需要入?yún)⒉拍芡瓿啥ㄎ?,但恰恰沒有任何日志。通過指定渲染路徑,并可記錄下路徑中所有方法的入?yún)⒎抵蹬c命令聯(lián)動。使用和介紹具體查看
目標(biāo)群體
有時候突然一個問題反饋上來,需要入?yún)⒉拍芡瓿啥ㄎ唬∏]有任何日志?;厝ゼ由现匦虏渴穑槐Х葧r間過去了,是不是很崩潰?
當(dāng)你經(jīng)過反復(fù)這樣幾次折騰之后變得聰明了,在自己的代碼的所有入?yún)⒑统鰠⒌胤蕉技由蟙ebug日志,但這次問題似乎暴露在別人的代碼中了...是不是很無奈?
突然遇到線上一個性能問題無法確定到底是哪個環(huán)節(jié)的耗時,只能反復(fù)抓jstack猜,還有沒有辦法可以好好的過日子啦?
遇到以上問題時,你就是我們這類工具的目標(biāo)客戶,此類工具能利用Java6的Instrumentation特性,動態(tài)增強(qiáng)你所指定的類,獲取你想要到的信息
內(nèi)置主要功能查看已被JVM所加載的類、方法信息
方法執(zhí)行監(jiān)控
調(diào)用量,成功失敗率,響應(yīng)時間
方法執(zhí)行數(shù)據(jù)操作
入?yún)?、返回值、異常信息記錄與查看;支持動作回放
性能開銷渲染!
跟蹤指定路徑中的方法調(diào)用軌跡、耗時
查看方法調(diào)用堆棧
軟件安裝在線安裝(推薦)
curl -sLk http://ompc.oss.aliyuncs.com/greys/install.sh|sh
本地安裝
greys-1.7.6.4-bin.zip-3108.1kB
解壓zip文件后,執(zhí)行以下命令
cd greys sh ./install-local.sh啟動Greys
目標(biāo)機(jī)器啟動
./ga.sh
./greys.sh[@IP:PORT]
如果不指定IP和PORT,默認(rèn)是127.0.0.1和3658
命令清單命令 | 說明 |
---|---|
help | 查看命令的幫助文檔,每個命令和參數(shù)都有很詳細(xì)的說明 |
sc | 查看JVM已加載的類信息 |
sm | 查看已加載的方法信息 |
monitor | 方法執(zhí)行監(jiān)控 |
trace | 渲染方法內(nèi)部調(diào)用路徑,并輸出方法路徑上的每個節(jié)點(diǎn)上耗時 |
ptrace | 強(qiáng)化版的trace命令。通過指定渲染路徑,并可記錄下路徑中所有方法的入?yún)?、返值;與tt命令聯(lián)動。 |
watch | 方法執(zhí)行數(shù)據(jù)觀測 |
tt | 方法執(zhí)行數(shù)據(jù)的時空隧道,記錄下指定方法每次調(diào)用的入?yún)⒑头祷匦畔ⅲ⒛軐@些不同的時間下調(diào)用進(jìn)行觀測 |
stack | 輸出當(dāng)前方法被調(diào)用的調(diào)用路徑 |
version | 輸出當(dāng)前目標(biāo)Java進(jìn)程所加載的Greys版本號 |
quit | 退出greys客戶端 |
shutdown | 關(guān)閉greys服務(wù)端 |
reset | 重置增強(qiáng)類,將被greys增強(qiáng)過的類全部還原 |
session | 查看當(dāng)前會話 |
jvm | 查看當(dāng)前JVM的信息 |
sc命令
sc -df *.impl.ApplyImpl
查看PreLoanImpl類信息
sm命令
sm -d .impl.ApplyImpl
查看ApplyImpl所有方法信息
monitor命令
monitor -c 20 *impl.PostLoanImpl monitorAdd
統(tǒng)計周期為20s,統(tǒng)計PostLoanImpl類的monitorAdd方法情況
trace命令
trace cn.fraudmetrix.creditcloud.api.impl.PostLoanImpl monitorAdd
跟蹤PostLoanImpl的monitorAdd方法調(diào)用stack并統(tǒng)計調(diào)用時間開銷
ptrace命令
ptrace -t cn.fraudmetrix.creditcloud.api.impl.PostLoanImpl monitorAdd
跟蹤PostLoanImpl的monitorAdd方法調(diào)用stack中含路徑名為fraudmetrix并統(tǒng)計調(diào)用時間開銷
watch命令
watch -bs *.impl.PostLoanImpl monitorAdd "params[0] + " " + params[1]+ " " + returnObj"
查看PostLoanImpl的monitorAdd方法的入?yún)?、返回值信?/p>
watch -b *.impl.PostLoanImpl monitorAdd "params[0]" -x 1
查看PostLoanImpl的monitorAdd方法的第一個入?yún)⑿畔ⅲ⒄归_一層顯示
tt命令
Greys使用和介紹具體查看:tt -t -n 3 *PostLoanImpl monitorAdd
記錄3次PostLoanImpl類的monitorAdd方法的執(zhí)行情況。
https://github.com/oldmanpush...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/66733.html
摘要:注意這個統(tǒng)計也會產(chǎn)生一定的開銷這個接口本身開銷比較大,因此會看到的線程占用一定的百分比,為了降低統(tǒng)計自身的開銷帶來的影響,可以把采樣間隔拉長一些,比如毫秒。 Arthas 能為你做什么? 這個類從哪個 jar 包加載的?為什么會報各種類相關(guān)的 Exception? 我改的代碼為什么沒有執(zhí)行到?難道是我沒 commit?分支搞錯了? 遇到問題無法在預(yù)發(fā) debug 一下,難道只能通過加...
摘要:在線調(diào)試工具你是否突然一天接到電話線上服務(wù)怎么回事,有人反應(yīng)哦,我先看看啊心想去,真的有問題,竟然沒打是不是傳參傳錯了看不出來了異常信息也沒有這有點(diǎn)難辦啊遇到這樣的一種情況,如果需要發(fā)現(xiàn)問題最快且風(fēng)險最小的解決方式,你會怎么辦遠(yuǎn)程,不行,對 Java在線調(diào)試工具 你是否突然一天接到電話: Qa :線上xx服務(wù)怎么回事,有人反應(yīng)@#¥#@#¥#You :哦,我先看看啊...心想: 去,真...
摘要:但隨著大數(shù)據(jù)及人工智能的快速發(fā)展,傳統(tǒng)的運(yùn)維方式及解決方案已不能滿足需求。從海量日志中獲取慢屬于大數(shù)據(jù)分析范疇。 摘要: AIOps英文全稱是Algorithmic IT Operations,是基于算法的IT運(yùn)維。AIOps是運(yùn)維領(lǐng)域上的熱點(diǎn),然而在滿足業(yè)務(wù)SLA的前提下,如何提升平臺效率和穩(wěn)定性及降低資源成本成為AIOps面臨的問題和挑戰(zhàn)。 背景 隨著搜索業(yè)務(wù)的快速發(fā)展,搜索系統(tǒng)...
摘要:摘要阿里云主要分為離線分析和在線分析兩種功能。演講嘉賓簡介勛臣,阿里云內(nèi)核團(tuán)隊(duì)技術(shù)專家,目前阿里云專家系統(tǒng)開發(fā)。通過診斷報告定位性能下降原因。 摘要:阿里云CloudDBA主要分為離線分析和在線分析兩種功能。幫助用戶節(jié)省成本,定位問題,分析原因并推薦解決方法。CloudDBA可以做到實(shí)時診斷,離線診斷和SQL優(yōu)化。并且通過MySQL的參數(shù)調(diào)優(yōu),檢測參數(shù)的不合理或者準(zhǔn)備的延遲的情況。 演...
閱讀 2324·2021-11-15 11:38
閱讀 2454·2021-11-15 11:37
閱讀 2557·2021-08-24 10:00
閱讀 2919·2019-08-30 15:56
閱讀 1277·2019-08-30 15:53
閱讀 3714·2019-08-29 18:43
閱讀 2943·2019-08-29 17:01
閱讀 3267·2019-08-29 16:25