国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

線上排查問(wèn)題的利器——Btrace

開(kāi)發(fā) 后端
Btrace 是一個(gè)安全,可以動(dòng)態(tài)跟蹤 java 程序的一種工具。他的操作不會(huì)對(duì)原有 java 進(jìn)程產(chǎn)生影響,不用關(guān)閉正在運(yùn)行的 java 進(jìn)程,也不會(huì)修改 java 進(jìn)程中的邏輯和數(shù)據(jù)。因此,也就成為我們線上跟蹤生產(chǎn)代碼的有力工具!

之前 Btrace 只是聽(tīng)說(shuō)過(guò),但還沒(méi)有具體的用到。最近在排查線上問(wèn)題的時(shí)候,使用了 Btrace ,發(fā)現(xiàn) Btrace 真是在關(guān)鍵時(shí)候的利器。

Btrace 是一個(gè)安全,可以動(dòng)態(tài)跟蹤 java 程序的一種工具。

他的操作不會(huì)對(duì)原有 java 進(jìn)程產(chǎn)生影響,不用關(guān)閉正在運(yùn)行的 java 進(jìn)程,也不會(huì)修改 java 進(jìn)程中的邏輯和數(shù)據(jù)。

因此,也就成為我們線上跟蹤生產(chǎn)代碼的有力工具!

Btrace 的腳本編寫也非常簡(jiǎn)單:和寫 Java 代碼一樣的,因此對(duì)于我們,學(xué)習(xí)的曲線幾乎是平坦的。

下面就分享一下 Btrace 的一些用法:

如何使用 Btrace

基本用法: trace

其中, btrace 是在 btrace 下載包中的命令 , pid 是 JVM 的進(jìn)程 id , btrace-script 是編寫的 btrace 腳本。

Btrace 中的一些概念

Probe Point : 關(guān)注點(diǎn)。就是我們要關(guān)注應(yīng)用程序中要執(zhí)行的“地方”,或者是一些“事件”的發(fā)生。

Trace Action : 就是觸發(fā)了 probe point 的時(shí)候,我們所要執(zhí)行的動(dòng)作。

Action Methods :我們的 trace action 都是寫在某個(gè)類的靜態(tài)方法中的,這個(gè)靜態(tài)方法,就是 action method 。

Btrace 中的一些限制:

Btrace 的初衷是要“跟蹤代碼”,而不是修改代碼,因此他要保證我們注入的腳本,是安全的,對(duì)應(yīng)用程序來(lái)說(shuō)是“只讀”的。也就是說(shuō)不能修改應(yīng)用程序的代碼或者數(shù)據(jù)。因此 Btrace 中有一些限制,主要有:

不能新建對(duì)象

不能拋異常

不能 catch 異常

不能調(diào)用實(shí)例方法和靜態(tài)方法。只能調(diào)用 Btrace 提供的 com.sun.btrace.BTraceUtils 中的方法和自己在腳本中定義的方法。

不能有循環(huán)

不能有斷言

……

初看起來(lái),好像限制蠻多的。不過(guò), com.sun.btrace.BTraceUtils 提供的方法很多,足夠我們來(lái)“跟蹤”代碼了。而且,這些限制也是必要的,因?yàn)槲覀冎皇堑侥莻€(gè) JVM 去看看,看看而已。

一個(gè)簡(jiǎn)單的 Btrace 腳本例子,其實(shí)就是 Java 代碼

 

 

其中:

其中類名需要加上 @Btrace 的注釋,以表示是 Btrace 腳本

OnMethod 表示一個(gè) probe point ,這個(gè)就表示當(dāng)執(zhí)行到 java.awt.Component 這個(gè)類的 方法(這個(gè)是 Component 的構(gòu)建方法)時(shí),就觸發(fā) func 方法。

@Self 表示這個(gè)被實(shí)例化的 Component 的引用

@OnTimer 表示事件(通過(guò)時(shí)間)觸發(fā)的 probe point ,每隔 2 秒觸發(fā)一次

相信程序不用做過(guò)多解釋,大家都知道,終端將會(huì)打印出從跟蹤開(kāi)始, Component 被實(shí)例化的個(gè)數(shù)。

支持的跟蹤類型

Btrace 支持的跟蹤類型有很多了,包括可以跟蹤:

跟蹤到某個(gè)實(shí)例方法的觸發(fā)

跟蹤到某個(gè)接口方法的觸發(fā)

跟蹤到觸發(fā)方法的參數(shù),返回值

可以將當(dāng)前觸發(fā)的線程堆棧打印出來(lái)

設(shè)置還可以跟蹤某個(gè)方法中的哪一行代碼被執(zhí)行到

Btrace 的 User Guide

http://kenai.com/projects/btrace/pages/UserGuide

關(guān)于 Btrace 的原理

詳情可見(jiàn): http://victorzhzh.javaeye.com/blog/965789

什么時(shí)候用 Btrace

雖然 Btrace 在關(guān)鍵時(shí)候能起到迅速排查問(wèn)題的作用,但我個(gè)人感覺(jué),這還是不到萬(wàn)不得已才使用的好。

首先,我們代碼上線前,應(yīng)該充分 review ,充分和相關(guān)方進(jìn)行溝通,以避免不必要的問(wèn)題發(fā)生。

其次,我們應(yīng)該養(yǎng)成記 log 的良好習(xí)慣。遇到問(wèn)題,如果有相關(guān)日志可以排查,是最方便的,同時(shí),也是最安全,成本***的一種排查方法。

***,我們可以結(jié)合 btrace 和 jdk 自帶的 tool 來(lái)排查問(wèn)題,比如 jstack , jstat 等等,快速的定位問(wèn)題。

以上就是本人剛開(kāi)始使用 Btrace 的一些成果,希望能對(duì)大家排查問(wèn)題帶來(lái)一些作用 。

【編輯推薦】

  1. MyEclipse 8.6 for Spring發(fā)布 新增iPhone工具
  2. MyEclipse 8.6正式版發(fā)布 以Eclipse 3.5.2為核心
  3. MyEclipse 8.6 M1發(fā)布 支持更多服務(wù)器
責(zé)任編輯:金賀 來(lái)源: JavaEye博客
相關(guān)推薦

2017-10-12 12:24:50

java

2024-08-14 14:20:00

2017-08-18 22:40:33

線上線程備份

2023-03-02 08:53:57

排查問(wèn)題效率經(jīng)驗(yàn)

2021-07-14 13:50:51

Linux命令文件

2020-11-12 10:58:22

Logger級(jí)別技巧

2024-10-10 15:32:51

2021-12-26 00:10:39

二分法排查版本

2020-04-28 09:46:34

線上問(wèn)題排查

2018-08-10 15:00:42

服務(wù)器內(nèi)存排查

2017-06-09 20:10:44

MySQL復(fù)制線程

2017-06-10 20:47:06

MySQL復(fù)制線程

2021-11-23 21:21:07

線上排查服務(wù)

2024-03-18 09:24:00

索引失效SQL

2018-12-10 10:30:40

阿里Linux命令

2025-08-29 07:32:17

2022-11-16 11:55:22

網(wǎng)絡(luò)連接命令

2019-11-12 08:53:00

線上命令日志

2023-12-05 07:12:39

優(yōu)化排查性能

2025-12-18 06:20:00

Wireshark網(wǎng)絡(luò)IP地址
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

精品国产一区二| 国产精品第一页第二页第三页| 欧美在线激情网| xxxx成人| 欧美久久久久久久久| 日本护士...精品国| 一区二区三区四区av| 免费一区二区三区在线观看| 久久日韩粉嫩一区二区三区| 国产精品视频网站在线观看 | 欧美成人免费全部网站| 亚洲国产精品字幕| 在线看一级片| 日韩欧美国产麻豆| 黄色在线观看视频网站| 精品国产伦一区二区三区观看方式 | 成人天堂yy6080亚洲高清| 日韩一级片网站| av网址在线播放| 日韩亚洲欧美中文三级| 好吊日视频在线观看| 欧美另类高清zo欧美| 黄色网址在线免费| 欧美电影免费提供在线观看| 国产羞羞视频在线播放| 美女亚洲一区| 日韩视频在线免费| 亚洲aⅴ网站| 国产一区二区三区探花| 成人午夜两性视频| 欧美自拍一区| 一本色道久久88精品综合| 激情综合色综合啪啪开心| 日韩成人免费电影| 欧美精品在线一区| 国产精品人人爽人人做我的可爱| 精品一区国产| 韩日av一区二区| 欧美视频免费看欧美视频| 国产日产欧美精品一区二区三区| 99热热99| 日本丶国产丶欧美色综合| 蜜桃传媒在线观看免费进入| 伊人伊成久久人综合网站| 大香伊人久久精品一区二区| 国产精品久久久| 亚欧美中日韩视频| 黄色三级中文字幕| 亚洲另类中文字| 麻豆视频在线| 久久影视电视剧免费网站清宫辞电视| 欧美男同视频网| 欧美人与性禽动交精品| 91一区二区在线观看| 中文字幕在线视频免费观看| 日韩精品专区在线影院观看| а天堂中文最新一区二区三区| 国产精品日日摸夜夜添夜夜av| 亚洲私人影院| 国产精品久久中文字幕| 一区二区三区国产精品| а√天堂官网中文在线| 九九热在线精品视频| 欧美大片专区| 乱人伦xxxx国语对白| 日韩欧美在线观看| 精品美女一区| 99电影网电视剧在线观看| 风流少妇一区二区| 国产综合视频一区二区三区免费| 亚洲摸下面视频| 天天综合一区| 欧美老熟妇喷水| 91久久免费观看| 久久69成人| 9a蜜桃久久久久久免费| 99国产精品国产精品久久| 可以在线观看的av网站| 精品国产欧美一区二区五十路| 中文无码久久精品| 精品无码一区二区三区在线| 色偷偷一区二区三区| av日韩在线免费观看| 欧美激情一区二区三区在线视频 | 美女视频久久| 国产精品国产三级国产普通话蜜臀 | 欧美专区福利在线| 久久爱另类一区二区小说| 美女做a视频| 丝袜亚洲欧美日韩综合| 日韩视频三区| 国产传媒视频在线观看| 中文字幕v亚洲ⅴv天堂| 国内在线观看一区二区三区| 九九九在线观看视频| 日韩高清欧美高清| 欧美区亚洲区| 1pon在线| 久久视频免费在线播放| 日本vs亚洲vs韩国一区三区| 三级做a全过程在线观看| 午夜精品久久久久久久久久久久久 | 欧美激情免费观看| 久久99日本精品| h视频在线观看免费| 97久久精品在线| 91网站最新网址| 热三久草你在线| 欧美区高清在线| 欧美日韩精品欧美日韩精品一 | 国产精品久久久久免费a∨| www.日韩在线| 波多野结依一区| 农村寡妇一区二区三区| 色综合天天狠狠| 欧美电影免费播放| 日本在线免费观看视频| 91sao在线观看国产| 久久久亚洲高清| 亚洲老司机网| 丁香六月激情网| 亚洲色图校园春色| 国产毛片精品国产一区二区三区| 国精产品一区一区三区mba下载| 九色综合日本| 91麻豆精品国产91久久久资源速度 | 精品香蕉在线观看视频一| 午夜在线视频观看日韩17c| 黄色网址在线播放| 亚洲一区亚洲二区| 欧美性xxxxxxxxx| 欧美在线高清| av大片在线看| 欧美黑人xxxxx| 亚洲精品一区二区三区蜜桃下载 | 欧美大片免费高清观看| 亚洲一区精品电影| 色婷婷久久久综合中文字幕| 亚洲精品va| 国产黄在线观看免费观看不卡| 成人一区二区三区四区| 欧美精品在线一区二区| 日韩激情一区二区| 久久sese| 一道本视频在线观看| 日韩女优在线播放| 欧美日韩亚洲网| 老鸭窝亚洲一区二区三区| 久草在线资源站手机版| 男女啪啪免费视频网站| 96精品视频在线| 欧美日韩国产一区在线| 日韩天堂av| 亚洲精品动漫| 蜜臀av免费观看| 亚洲a成v人在线观看| 91精品国产一区二区三区香蕉| 精品在线你懂的| 久久av网站| 一区二区三区四区在线免费视频 | 欧美91大片| 国内老司机av在线| 日韩欧美精品在线观看视频| 欧美亚州一区二区三区| 色欧美乱欧美15图片| 免费黄网站欧美| 亚洲网址在线观看| 视频国产一区二区三区| 日本在线播放不卡| 久久视频在线视频| 亚洲电影一级黄| 免费在线成人网| 香蕉成人app| 国产日韩精品在线看| 加勒比海盗1在线观看免费国语版| 久久综合久久八八| 色乱码一区二区三区88| 国产精品 欧美精品| 精品国产乱码| 欧美激情网站| y4480在线8影院| 超碰97在线看| 国产日韩欧美在线| 国产一区二区三区欧美| 动漫精品一区二区| 成人高清在线视频| 红桃视频欧美| 999国产精品一区| 欧美性受ⅹ╳╳╳黑人a性爽| 99爱免费视频| 伊人久久av导航| 国产日韩中文字幕| 日韩视频精品在线| 欧美一区二区三区免费在线看| 91在线小视频| 日日夜夜精品视频免费| 日韩av在线中文字幕| 日韩高清不卡| 二区三区四区高清视频在线观看| 超清福利视频|