使用JBoss EAP 6.1进行Oracle JDBC诊断

时间:2014-04-14 08:47:08

标签: sql oracle jboss

如何在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 

但我没有得到任何结果。我的配置有什么问题?

2 个答案:

答案 0 :(得分:3)

我认为您可以使用jboss 7标准进行jdbc日志记录,如下所示:

http://middlewaremagic.com/jboss/?p=1050

答案 1 :(得分:3)

以下是我在JBoss 7.1.1中所做的工作,以便将Oracle驱动程序的调试版本记录下来:

  1. 将ojdbc6.jar文件替换为$ JBOSS_HOME / modules / com / oracle / ojdbc / main中的ojdbc6_g.jar文件。我用#34; _g"取代了那里的JAR。但保留了名称,所以我没有必要更改任何其他配置文件。
  2. 添加了" -Doracle.jdbc.Trace = true"在我的JBoss启动脚本中对JAVA_OPTS的声明。
  3. 最重要的是,我将Oracle JDBC调试的日志记录类别添加到我的standalone.xml:
  4. - 在

    旁边
    <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调试记录器文档定义的所有不同部分创建日志类别,只需确保使用正确的日志记录级别:

    • OFF
    • 严重
    • 警告
    • INFO
    • CONFIG
    • FINE
    • FINER
    • FINEST

    现在的好处是,您可以使用jboss-cli命令行工具即时更改级别。