asm有两种注入方式
1,instrument -- java agent
2, classload
3, Class.forName 反射
场景
将堆栈异常和代码绑定,以便快速定位问题
实现
用asm改写 toString / printStackTrace / Throwable 方法,并将Throwable 类加载提升到boot级别, 并调用反编译api 将堆栈信息装换成Java代码
用instrument来将asm注入现有代码
1,instrument -- java agent
2, classload
3, Class.forName 反射
场景
将堆栈异常和代码绑定,以便快速定位问题
实现
用asm改写 toString / printStackTrace / Throwable 方法,并将Throwable 类加载提升到boot级别, 并调用反编译api 将堆栈信息装换成Java代码
用instrument来将asm注入现有代码