Java 异常诊断 HouseMD
fmms
13年前
HouseMD是用于收集Java程序运行时信息的命令行工具, 它可以帮助诊断问题或异常.
其优势有:
- 命令行接口, 能够方便在服务器环境中运行;
- 弱侵入, 目标
Java
程序无需任何修改, 不用重新部署或重启 - 有效控制给目标进程带来的资源消耗
- 不遗留任何"代码垃圾"等后遗症
总结而言比jinfo强大, 比btrace简单, 最重要是适合在生产环境中使用.
目前能够收集的信息有:
- 进程相关
- pid
- 运行的参数
- 启动时间
- 运行多久
- 环境相关
- 环境变量(
System.getenv
) - 系统属性(
System.getProperties
)
- 环境变量(
- 加载的类
- 类名
- 类的来源路径
- 方法调用
- 调用开始时间
- 调用耗时
- 调用线程名
- 调用方法全名, 包名.类名.方法名
- 调用参数
- 调用返回或异常
更多信息请见https://github.com/zhongl/HouseMD/wiki/UseGuideCN