yjp在jboss上的on-demand attach

根据http://www.yourkit.com/docs/10/help/attach_agent.jsp,yjp可以on-demand式的attach上本机任何一个运行的jvm进行分析——即使这个jvm启动时没有加上和yjp任何有关的参数。

 

这点很强大,也基本上很有用,特别对于生产环境的中间件运行时。但当我把yjp attach到运行的jboss 5时,jboss汇报了如下的错误,虽然貌似不影响profiling,终归不爽

 

23:12:44,877 ERROR [ContainerBase] Exception invoking periodic operation: 
java.lang.NoClassDefFoundError: com/yourkit/runtime/Callback
	at org.apache.jasper.servlet.JspServlet.periodicEvent(JspServlet.java)
	at org.apache.catalina.core.StandardWrapper.backgroundProcess(StandardWrapper.java:639)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1612)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1601)
	at java.lang.Thread.run(Thread.java:662)

 于是,依照jboss的类加载机制,我发现这个workaround是可行的:

1. 在attach yjp前将yjp.jar拷贝到$JBOSS_HOME/server/$PROFILE/deploy下

2. 在yjp的GUI上attach

 

当然,runtime时的on-demand attach是有很多使用限制的,可以参考http://www.yourkit.com/docs/10/help/attach_agent.jsp的描述,比较致命的是,它有将jvm搞死的风险呢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值