10

我正在将JPA 2.0EclipseLink提供程序)与Glassfish v3.0.1NetBeans 6.9.1一起使用,并且无法查看来自 JPA 2.0 的查询和其他日志记录信息。本质上,我希望能够看到 JPA 生成的所有 SQL 语句以及其他相关的调试信息......

是否有人成功配置日志记录以提供此类反馈?我已经尝试了几件事无济于事...

任何帮助将不胜感激。

非常感谢。

4

2 回答 2

14

最终对我有用的是:

<property name="eclipselink.logging.logger"
     value="org.eclipse.persistence.logging.DefaultSessionLog"/>
结合您推荐的标签:
<property name="eclipselink.logging.level" value="FINE" />
这让我可以看到 NetBeans 输出窗口中的相关 JPA 日志。这也适用于 Eclipse。输出是在控制台窗口中发送的,与服务器的输出混合在一起,这正是我想要的。

于 2011-02-26T20:18:39.407 回答
5

您必须在 persistence.xml 文件中配置日志记录级别。

例子:

<persistence-unit name="MY_POOL_NAME" transaction-type="JTA">
  <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <jta-data-source>MY_JTA_SOURCE</jta-data-source>
    <properties>
        <property name="eclipselink.logging.level" value="FINE" />
        <property name="eclipselink.target-server" value="SunAS9"/>
    </properties>
  </persistence-unit>

日志级别:
关闭
严重
警告
信息
配置 - 将此用于生产
FINE
FINER
FINEST
更多信息:http ://wiki.eclipse.org/EclipseLink/Examples/JPA/Logging

所有查询都将打印在域server.log文件中。

于 2011-01-16T13:22:09.173 回答