P6Spy 监控JDBC详细配置说明

来源:互联网 发布:php图片验证码源码 编辑:程序博客网 时间:2024/06/07 07:35

到:下载

1、解压出p6spy.jar 和 spy.properties两个文件

2、将p6spy.jar 放入应用程序的WEB-INF/lib目录,将spy.properties放入WEB-INF/classes目录(也就是工程的src下面)
3、修改spy.properties

    realdriver  =com.mysql.jdbc.Driver  将这行前面的#去掉
    logfile     = c:/spy.log  修改一个你需要的日志文件名,(下面可以配置输出到控制台)

4、module.log的属性必须配置,如果不配置,P6SPY将不起任何作用,典型配置为:module.log=com.p6spy.engine.logging.P6LogFactory

     realdriver=oracle.jdbc.driver.OracleDriver

 

5、appender配置,一般分为三种

      #appender=com.p6spy.engine.logging.appender.Log4jLogger

      # appender=com.p6spy.engine.logging.appender.StdoutLogger

      #appender=com.p6spy.engine.logging.appender.FileLogger

      其中,appender=com.p6spy.engine.logging.appender.StdoutLogger表示将输出的SQL或者日志信息输出到Console窗口。

 

6、log4j.logger.p6spy一般需要将log4j的相关参数从默认的,就是参数和log4j配置一样。

      log4j.logger.p6spy=info,STDOUT

      修改为

      log4j.logger.p6spy=warn,STDOUT

      以减少p6spy信息的输出

 

7、可以将dateformat=修改为dateformat=hh:mm:ss,SSS有利用时间信息的查看。

8、修改hibernate.cfg.xml,修改connection.driver_class的值为com.p6spy.engine.spy.P6SpyDriver

9、如果spy.log里出现
  你的程序的数据库驱动名称 is a real driver in spy.properties, but it has been loaded before p6spy . p6spy will not wrap these connections. Either prevent the driver from loading, or try setting 'deregisterdrivers' to true in spy.properties
  请把spy.properties文件里的deregisterdrivers=false改为deregisterdrivers=true,重新运行即可。

10、在spring 配置文件中配置如下:

  1. <!-- P6SPY dataSource target -->      
  2.      < beanid = "dataSourceTarget" class = "org.spring framework.jdbc.datasource.DriverManagerDataSource">       
  3.          < property name = "driverClassName"       
  4.              value ="oracle.jdbc.OracleDriver" />      
  5.          < property name = "url"       
  6.              value ="jdbc:oracle:thin:@localhost:1521:testdb" />       
  7.          < property name = "username" value ="tet" />      
  8.          < propertyname = "password" value ="test" />      
  9.      </ bean >       
  10.            
  11.      <!--   dataSource -->      
  12.     < bean id= "dataSource4develop" class= "com.p6spy .engine.spy.P6DataSource"destroy-method = "close" >          
  13.          < constructor-arg >          
  14.              < reflocal = "dataSourceTarget" />          
  15.          </ constructor-arg >          
  16.      </ bean>

 

原创粉丝点击