我有一个maven应用程序运行在JBoss EAP 7.2上。以下是详细信息。
虽然我成功地配置了JavaMelody,并看到了主要的统计数据,但我似乎找不到配置SQL监控的方法。
目前,对于我的JDBC配置,我使用的是 <jta-data-source>java:jboss/datasources/myDS</jta-data-source>
在我的persistence.xml文件中,它从JBoss服务器的standalone.xml中读取数据源。
我试着在我的 persistence.xml 文件中做了一些修改,比如添加。
<property name="net.bull.javamelody.jpa.provider" value="org.hibernate.jpa.HibernatePersistenceProvider" />
或者
<property name="hibernate.connection.driver_class" value="net.bull.javamelody.JdbcDriver"/>
我的struts.xml配置
<package name="myApp" extends="struts-default">
<interceptors>
<interceptor name="monitoring" class="net.bull.javamelody.StrutsInterceptor" />
<interceptor-stack name="myAppStack">
<interceptor-ref name="monitoring" />
<interceptor-ref name="prepare" />
....
<interceptor-ref name="json" />
<interceptor-ref name="debugging" />
<interceptor-ref name="defaultStack" />
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="myAppStack" />
</package>
甚至在持久化文件中使用hibernate.connection.urlusernamepassword属性完全配置我的数据源,但没有任何收获。
我试着按照这里的说明去做,但似乎找不到问题所在。https:/github.comjavamelodyjavamelodywikiUserGuide#7-jdbc。 https:/github.comjavamelodyjavamelodywikiUserGuideAdvanced#jpa-monitoring。
注: 在我的 persistence.xml 中,我也使用了 <property name="hibernate.connection.driver" value="oracle.jdbc.OracleDriver" />
. 我不知道这是否有什么冲突。
JPA监控与SQL监控完全不同,请勿尝试。net.bull.javamelody.jpa.provider
来监控SQL。而且,试一试也没有用 hibernate.connection.driver_class
如果你使用的是JNDI中的数据源,那么你可以尝试从JNDI中的数据源监控SQL。
对于SQL监控,可以尝试从JNDI中的数据源监控SQL。
-Djavamelody.datasources=java:jboss/datasources/myDS
java:jdbc/myDS
然后查看javamelody报告底部的 "调试日志"。
因为你使用的是EAR,所以请看一看 https:/github.comjavamelodyjavamelodywikiUserGuideAdvanced#setup-javamelody-in-an-ear-file。