赞
踩
原文网址:Java探针--javaagent--使用/实例_IT利刃出鞘的博客-CSDN博客
技术星球
欢迎来到IT技术星球,网站是:learn.skyofit.com(或者百度直接搜:自学精灵)。内容有:Java学习路线、Java学习资料、Java入门实战项目、Java真实面试题、Java设计模式实战、Shiro项目实战、Idea和Navicat的“魔法”教程、SpringBoot进阶、架构与微服务设计、高并发实战网站防御技术等。网站的定位:超高的质量、超高的真实性、超高的实用性。欢迎加入~
本文用示例介绍javaagent的用法。
JavaAgent 是JDK 1.5 以后引入的,也叫做Java代理。
javaagent的作用
这实际上提供了一种虚拟机级别的 AOP 实现方式。通过以上方法就能实现对一些框架或是技术的采集点进行字节码修改,完成这些功能:对应用进行监控,对执行指定方法或是接口时额外添加操作(打印日志、打印方法执行时间、采集方法的入参和结果等)。
很多APM监控系统就是基于此实现的,例如:Arthas、SkyWalking。
javaagent的使用方式
javaagent其他的功能
Agent分为如下两种:
静态Instrument(启动时)加载Instrument过程
动态Instrument运行时加载Instrument过程
通过JVM的attach机制来请求目标JVM加载对应的agent,过程大致如下:
项目结构
1.提供premain方法
上边是文章的部分内容,为便于维护,全文已转移到此网址:Java探针-javaagent-使用/实例 - 自学精灵
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。