如何在JBoss EAP 6.1中记录sql。我正在使用Oracle。
资源链接:Oracle JDBC诊断http://docs.oracle.com/cd/B28359_01/java.111/b31224/diagnose.htm#CIAIEEFF
我正在使用ojdbc6_g JDBC驱动程序。
myJdbcLoggingConfig.properties:
.level=CONFIG
oracle.jdbc.level=CONFIG
oracle.jdbc.handlers=java.util.logging.FileHandler
java.util.logging.FileHandler.level=CONFIG
java.util.logging.FileHandler.pattern=C:/work/jdbc.log
java.util.logging.FileHandler.count=1
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
Jboss-Tools(Eclipse)中的Java VM参数:
-Djava.util.logging.config.file=C:/work/myJdbcLoggingConfig.properties
但我没有得到任何结果。我的配置有什么问题?
答案 0 :(得分:3)
我认为您可以使用jboss 7标准进行jdbc日志记录,如下所示:
答案 1 :(得分:3)
以下是我在JBoss 7.1.1中所做的工作,以便将Oracle驱动程序的调试版本记录下来:
- 在
旁边<subsystem xmlns="urn:jboss:domain:logging:1.1">
部分我为Oracle的内容添加了一个单独的文件记录器。您不必这样做,但服务器日志已经非常混乱。您可以通过定义文件记录器来完成此操作:
<periodic-rotating-file-handler name="JDBCLOG">
<formatter>
<pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="networkpacket.log"/>
<suffix value=".yyyy-MM-dd"/>
<append value="true"/>
</periodic-rotating-file-handler>
任何你想要的名字;我选择&#34; networkpacket.log&#34;
- 创建Oracle日志记录信息的日志类别。请注意,它们使用log4j():
的不同级别 <logger category="oracle.jdbc" use-parent-handlers="false">
<level name="CONFIG"/>
<handlers>
<handler name="JDBCLOG"/>
</handlers>
</logger>
<logger category="oracle.net.ns" use-parent-handlers="false">
<level name="CONFIG"/>
<handlers>
<handler name="JDBCLOG"/>
</handlers>
</logger>
您可以为Oracle调试记录器文档定义的所有不同部分创建日志类别,只需确保使用正确的日志记录级别:
现在的好处是,您可以使用jboss-cli
命令行工具即时更改级别。