在 tomcat 上使用 jamon.war
我正在使用 JAMon,并且我想使用 jamon.war
来监控我的应用程序。但是,我的应用程序和 Jamon.war 应用程序具有不同的类加载器,因此它们看不到彼此的静态变量(据我所知,数据存储在其中)。当我在应用程序中调用 MonitorFactory.getReport()
时,我得到了正确的数据。
如何让它发挥作用?
I'm using JAMon, and I want to use the jamon.war
to monitor my app. However, my app and the jamon.war
app have different classloaders, and therefore they don't see each other's static variables (where the data is stored, as far as I understand). I am getting the proper data when I call MonitorFactory.getReport()
in my app.
How to get this working?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
问题是我的 WEB-INF/lib 中有 jamon-xx.jar。当我删除它(并且仅将其放在 tomcat 的 lib 目录中)时,它由 tomcat 类加载器(我猜它是所有应用程序类加载器的父级)加载,因此两个应用程序可以共享静态字段。
The problem was that I had jamon-xx.jar in my
WEB-INF/lib
. When I remove it (and have it only in tomcat's lib dir), it is loaded by the tomcat classloader (which I guess is a parent of all application classloaders), and so the two applications can share the static fields.