BTrace
介绍
BTrace是一个用于Java平台的安全的动态跟踪工具。 BTrace可用于动态跟踪正在运行的Java程序(类似于用于OpenSolaris应用程序和操作系统的DTrace)。 BTrace动态测试目标应用程序的类以注入跟踪代码(“字节码跟踪”)。
BTrace的工作原理是动态的(字节码)改编已运行Java程序的类。 BTrace插入跟踪行动统一到一个运行Java程序的类和hotswaps跟踪的程序类。
Building BTrace
Setup
- JDK(建议优先选择jdk8)
- Git
- Gradle(可选ANT,MAVEN)
Build
Gradle
cd <btrace> ./gradlew build ./gradlew buildDistributions
二进制的dist包可以在
/build/distributions目录下找到,是.tar.gz, .zip, .rpm和.deb的文件 Ant
cd <btrace>/make ant dist
二进制的dist包可以在
/dist目录下找到,是.tar.gz和.zip的文件
使用BTrace
安装
- 首先,你需要从release page下载文件.解压二进制文件(.zip或.tar.gz)到你指定的目录中
- 设置系统环境变量BTRACE_HOME指向包含展开的分布的目录
- 为方便起见,可以使用$ORACLE_HOME/bin添加到系统环境变量PATH中。(或者,安装 .rpm的或 .deb软件包之一)
- 输入命令btrace -h查看是否安装成功
运行
- \
/bin/btrace \ \ 将附加到具有给定PID的java应用程序,并编译并提交跟踪脚本 - \
/bin/tracer \ 将编译提供的跟踪脚本 - \
/bin/btracer \ \ 将启动指定的java应用程序,其中btrace代理运行,并且之前由btracec编译的脚本加载
maven集成
maven插件提供了对BTrace脚本的轻松编译