glassfish 3.1.2监控EJB容器,bean方法

时间:2012-12-06 15:40:04

标签: methods glassfish ejb javabeans monitoring

glassfish应用程序服务器提供了一个很好的监控REST接口。 要使用它,您可以在管理控制台中启用多个可监视项,例如EJB容器。文档说,您可以检索每个已部署应用程序的EJB统计信息。

如果您请求 localhost:4848 / monitoring / domain1 / server / applications / APPNAME / EJBNAME 这样的网址,您将获得该应用程序的给定EJB的统计信息。

此外,有可能更深入地了解ejb的每个bean方法,例如执行时间,文档说明如下:
“执行该方法的时间(以毫秒为单位),用于上次成功/不成功尝试运行操作。如果在EJB容器上启用了监视,则会收集无状态和有状态会话Bean以及实体bean 。 /强>“

现在的问题是,在EJB容器上启用了监视(Level设置为HIGH),但在任何部署的应用程序的任何EJB中的任何bean方法中都没有采样。

豆和/或玻璃鱼中有什么特别的东西吗?

提前感谢您的帮助,

克里斯

编辑:

好的,我注意到有关这种行为的更多信息:

在服务器日志中,您可以获得每个已部署的EJB的日志消息:

INFO: EJB5181:Portable JNDI names for EJB DataFetcher // ...

如果我将ejb-container监控级别设置为HIGH(这是我想要做的),我会为每个已部署的EJB收到以下警告,无论我部署哪个应用程序:

WARNING: MNTG0201:Flashlight listener registration failed for listener class : com.sun.ejb.monitoring.stats.StatelessSessionBeanStatsProvider , will retry later 

我用谷歌搜索了警告,但没有任何结果确实帮助我启用EJB监控......

3 个答案:

答案 0 :(得分:3)

这似乎是Glassfish中的一个Bug EJB监控目前在3.1.2中不起作用 JIRA问题已经提出:http://java.net/jira/browse/GLASSFISH-19677

答案 1 :(得分:0)

没有什么“特别”可做。

http://docs.oracle.com/cd/E18930_01/html/821-2431/abeea.html

对我来说,好像你可能在错误的配置上启用了监控选项。请仔细检查。

答案 2 :(得分:0)

要删除此消息,您可以在图像

中禁用以下ejb容器选项上的监视

来自Monitor Data--->Configure monitoring--->make ejb container log off diable monitor