Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
JVM运行时诊断工具 HouseMD
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Lunfu Zhong
June 04, 2013
Programming
510
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JVM运行时诊断工具 HouseMD
Lunfu Zhong
June 04, 2013
More Decks by Lunfu Zhong
See All by Lunfu Zhong
spring-boot 在统一架构体系中的价值
zhongl
2
890
如何准备一场主题分享
zhongl
1
330
当配置遇到 Scala宏
zhongl
1
370
项目求生指南
zhongl
0
380
LEGO - let's build everything by scala
zhongl
1
290
Real-world Scala
zhongl
2
170
Art of The Code
zhongl
1
270
Other Decks in Programming
See All in Programming
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
210
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
340
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
820
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
1k
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
210
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.9k
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
280
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
140
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.9k
スマートグラスで並列バイブコーディング
hyshu
0
270
自作OSでスライド発表する
uyuki234
1
3.6k
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
780
Featured
See All Featured
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
170
[SF Ruby Conf 2025] Rails X
palkan
2
1.1k
Claude Code のすすめ
schroneko
67
230k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
210
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
860
Discover your Explorer Soul
emna__ayadi
2
1.2k
HDC tutorial
michielstock
2
730
A better future with KSS
kneath
240
18k
The Limits of Empathy - UXLibs8
cassininazir
1
380
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
800
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
440
Transcript
H ouse .M.D
聚石@taobao.com https://github.com/zhongl
他是一位 诊断 技艺精湛的医生
话说 诊断 技艺精湛的 程序员会是...
System.out.println("debugging");
LOG.debug("debugging");
信息打印总不全有木有? 又要改代码 > 编译 > 部署, 有木有? 多来几次想屎的心有木有?
工欲善其事,必先利其器
BTrace 神器降临, 一秒钟变高富帅!
Invocation Interception Profile JStack Context DTrace JMap JInfo Histogram Memory
File Socket
甜蜜中略带苦涩, 幸福中稍显忧伤
https://gist.github.com/zhongl/5625338 ClassNotFoundException
https://gist.github.com/zhongl/5625366 StackOverflowError
不用IDE写脚本很苦逼, 有木有? 总是要调整几次脚本才见效, 有木有? 多来几次尿都憋不住了, 有木有?
HouseMD 交互式命令行
$ housemd <jvm pid> INFO : Welcome to HouseMD 0.2.4
INFO : connection established on 54321 housemd> _
`trace TraceTarget.addOne`
`trace TraceTarget$C+` trace sub class
`trace -d TraceTarget$C+` get args and return
`trace -s TraceTarget$C+` get invocation StackTrace
Demo
http://github.com/csug/housemd
Tips & Traps
limit < 100 timeout < 3 `trace` with `-l -t`
trace unknown sub class instance `trace` with `Xxx+`
SimpleName conflict `trace` with `-p com.xxx`
INFO: Ended by error `last` for error ending
class loaded by who from where `loaded` for class info
port conflict `housemd -p <port>`
Emacs edit mode, power by jline2 `Ctrl + r` for
history search
Backspace do not work Linux mode in SecureCRT
chmod +w /tmp No echo cause by privilege
housemd -h > help [command] test cases issues More help
!!!
https://github.com/CSUG/HouseMD/wiki/DevGuideCN Contribute to HouseMD
Intro CSUG
Thanks
Scala In HouseMD TODO