如何在JBOSS 7.2中开启DataNucleus的SQL日志功能?
解决DataNucleus在JBOSS 7.2.2中输出SQL查询的配置方案
核心配置逻辑
JBOSS 7.x采用JBoss Logging框架,而非直接兼容log4j 1.2的配置前缀,之前尝试的log4j.category.DataNucleus这类无效类别需要替换为DataNucleus实际使用的日志包路径。
正确的XML配置(standalone.xml/domain.xml)
在配置文件的<subsystem xmlns="urn:jboss:domain:logging:1.5">节点下添加以下logger配置:
<!-- 开启DataNucleus核心运行日志 --> <logger category="org.datanucleus"> <level name="DEBUG"/> </logger> <!-- 专门输出生成的SQL语句,TRACE级别会包含参数值 --> <logger category="org.datanucleus.store.rdbms.SQL"> <level name="TRACE"/> </logger>
JBOSS管理控制台配置步骤
在控制台的配置→子系统→日志记录→记录器中添加两个记录器:
- 记录器名称:
org.datanucleus,级别设置为DEBUG - 记录器名称:
org.datanucleus.store.rdbms.SQL,级别设置为TRACE
补充说明
- 级别适配:仅需SQL语句时,
org.datanucleus.store.rdbms.SQL可设为DEBUG;需要查看SQL绑定的参数值时用TRACE - 无需配置任何带
log4j.category前缀的类别,JBoss Logging不会识别这类格式 - 配置完成后需重启JBOSS使设置生效
内容的提问来源于stack exchange,提问作者Stave Escura
相关产品推荐
相关产品推荐

