`
onho
  • 浏览: 16935 次
  • 来自: ...
社区版块
存档分类
最新评论

p6spy如何监控复杂web系统的sql语句,内有实验记录

    博客分类:
  • java
阅读更多

 

一个部署比较复杂的web系统,无源码,想用p6spy抓获sql语句,查阅网上大量的资料之后,并做实验之后,发现还是不能抓出sql语句,估计是web系统部署太复杂的原因,请教我应该怎么设置p6spy。

 

 

1、一个web系统有多个应用组成,使用同一个登录页面,web系统的的目录结构如下:

 


 

|---3rdparty
|       |---apache-tomcat-6.0.18
|       |                   |---lib
|       |                   |---temp
|       |                   |---bin
|       |                   |---work
|       |                   |---conf
|       |                   |---webapps
|---bin
|---reports
|---etc
|    |---apache
|    |---tomcat
|    |---init.d
|---common
|     |---lib              ------这个目录下面p6spy.jar,放在其他lib目录下面web服务起不来
|     |---classes      ------这个目录下面spy.properties,因为链接数据库的配置文件在此目录,放在其他classes目录web下面服务起不来
|     |      |---bshcommands
|---webapps
|      |---app1
|      |          |---WEB-INF
|      |          |      |---lib
|      |          |      |---classes
|      |          |---common
|      |          |     |---javascript
|      |          |     |---xslt
|      |          |     |---flashfiles
|      |          |     |---vbscript
|      |          |     |---images
|      |          |     |     |---tabs
|      |          |     |     |---configuration
|      |          |     |     |---tableHeader
|      |          |     |---css
|      |---app2
|      |    |---WEB-INF
|      |    |      |---lib
|      |    |      |---classes
|      |    |---inc
|      |---app3
|      |    |---WEB-INF
|      |    |      |---lib
|      |    |      |---classes
|      |    |---inc
|      |---app4
|      |     |---WEB-INF
|      |     |      |---lib
|      |     |      |---classes
|      |     |---inc
|      |---app5
|      |    |---WEB-INF
|      |    |      |---lib
|      |    |      |---classes
|      |    |---inc
|      |---app6
|      |      |---WEB-INF
|      |      |      |---lib
|      |      |      |---classes
|      |---app7
|      |     |---WEB-INF
|      |     |      |---lib
|      |     |      |---classes
|      |     |---common
|      |     |     |---javascript
|      |     |     |---images
|      |     |     |     |---tabs
|      |     |     |---css
2、common/classes下面存放连接数据库的配置文件;
3、复制p6spy.jar到common/lib目录下面,spy.properties复制到common/classes目录下面,已经修改了spy.properties文件的以下内容:
        realdriver=oracle.jdbc.driver.OracleDriver
        appender=com.p6spy.engine.logging.appender.Log4jLogger
        logfile     = spy.log
        spy.properties文件的其它内容没有修改,默认状态。
4、执行上述目录结构bin下面的启动脚本,web服务能够正常启动,web系统也能够正常使用,spy.log文件生成在上述目录结构的根目录,spy.log内容如下:
       1274235196764|-1||debug||com.p6spy.engine.common.P6SpyOptions reloading properties
1274235196769|-1||info||Using properties file: /opt/xxx/xxxx/common/classes/spy.properties
1274235196769|-1||info||No value in environment for: getStackTrace, using: false
1274235196769|-1||info||No value in environment for: getFilter, using: false
1274235196769|-1||info||No value in environment for: getAppender, using: com.p6spy.engine.logging.appender.Log4jLogger
1274235196769|-1||info||No value in environment for: getAppend, using: true
1274235196769|-1||info||No value in environment for: getDeregisterDrivers, using: false
1274235196769|-1||info||No value in environment for: getUsePrefix, using: false
1274235196769|-1||info||No value in environment for: getExecutionThreshold, using: 0
1274235196769|-1||info||No value in environment for: getAutoflush, using: true
1274235196769|-1||info||No value in environment for: getExclude, using: 
1274235196769|-1||info||No value in environment for: getExcludecategories, using: info,debug,result,batch
1274235196769|-1||info||No value in environment for: getInclude, using: 
1274235196769|-1||info||No value in environment for: getIncludecategories, using: 
1274235196769|-1||info||No value in environment for: getLogfile, using: spy.log
1274235196770|-1||info||No value in environment for: getRealdriver, using: oracle.jdbc.driver.OracleDriver
1274235196770|-1||info||No value in environment for: getRealdriver2, using: 
1274235196770|-1||info||No value in environment for: getRealdriver3, using: 
1274235196770|-1||info||No value in environment for: getSpydriver, using: com.p6spy.engine.spy.P6SpyDriver
1274235196770|-1||info||No value in environment for: getDateformat, using: 
1274235196770|-1||info||No value in environment for: getDateformatter, using: null
1274235196770|-1||info||No value in environment for: getStringmatcher, using: com.p6spy.engine.common.SubstringMatcher
1274235196770|-1||info||No value in environment for: getStringMatcherEngine, using: com.p6spy.engine.common.SubstringMatcher@81a197
1274235196770|-1||info||No value in environment for: getStackTraceClass, using: 
1274235196770|-1||info||No value in environment for: getSQLExpression, using: null
1274235196770|-1||info||No value in environment for: getReloadProperties, using: false
1274235196770|-1||info||No value in environment for: getReloadPropertiesInterval, using: 60
1274235196770|-1||info||No value in environment for: getJNDIContextFactory, using: null
1274235196770|-1||info||No value in environment for: getJNDIContextProviderURL, using: null
1274235196770|-1||info||No value in environment for: getJNDIContextCustom, using: null
1274235196770|-1||info||No value in environment for: getRealDataSource, using: null
1274235196770|-1||info||No value in environment for: getRealDataSourceClass, using: null
1274235196770|-1||info||No value in environment for: getRealDataSourceProperties, using: null

   5、此时执行web页面的任何功能,spy.log下面再无新的内容出现。

 

 

对于这样的情况,我应该怎样配置p6spy,请大家多多帮忙,谢谢、谢谢。。。


 

分享到:
评论

相关推荐

    采用p6spy完整显示hibernate的SQL语句

    P6Spy是一个开源的JDBC代理库,它允许我们监控并记录应用通过JDBC执行的所有数据库操作,包括那些由Hibernate生成的SQL语句。它不仅可以提供完整的SQL语句,还能够提供执行时间、性能指标等详细信息,这对于优化...

    P6SPY JDBC拦截打印sql语句 非常好的调试工具

    P6spy是一个JDBC Driver的包装工具,p6spy通过对JDBC Driver的封装以达到对SQL语句的监听和分析,以达到各种目的。 p6spy的安装步骤: 1. 下载p6spy的安装包 2. 把p6spy的jar包放到Classpath中,如果是WEB App...

    使用p6spy完整显示hibernate的SQL语句

    `p6spy`是一个非常实用的开源工具,它能够帮助我们监控和记录应用通过JDBC执行的所有SQL语句。这篇博客“使用p6spy完整显示hibernate的SQL语句”可能详细解释了如何配置和使用p6spy来跟踪Hibernate生成并执行的SQL。...

    使用P6spy打印ibatis执行的SQL语句

    P6Spy是一款开源的Java工具,它允许开发者捕获和记录应用程序与数据库之间的交互,特别是SQL语句的执行。本文将详细探讨如何使用P6Spy来打印iBatis(现为MyBatis)执行的SQL语句,以便进行性能分析和调试。 首先,...

    借鉴p6spy,实现自己的SQL执行监控器项目源代码

    P6Spy是一个广泛使用的开源框架,它允许开发者无侵入地监控和记录应用程序中的所有SQL语句。这个项目的目标是借鉴P6Spy的部分源码,创建一个自定义的SQL执行监控器,以满足特定的需求或提供更定制化的功能。 P6Spy...

    p6spy-sql监控

    1. **SQL日志记录**:P6Spy可以捕获并记录所有执行的SQL语句,包括原始的SQL、执行时间、返回结果等,这对于追踪数据库操作和性能分析非常有用。 2. **日志格式自定义**:P6Spy允许用户通过配置文件定制日志输出...

    p6spy dataSource 配置 监听真实sql语句

    p6spy dataSource 配置 监听真实sql语句

    p6spy精简版-跟踪sql工具

    【p6spy精简版-跟踪SQL工具】是一款专为数据库操作监控设计的工具,它通过对JDBC驱动的拦截,实现对SQL语句的透明跟踪。这个精简版旨在简化p6spy的原生配置和使用流程,让更多非开发人员也能便捷地利用此工具来监控...

    用 p6spy 来观察 Java 程序中执行的所有 SQL 语句.docx

    p6spy 是一个开源的 Java 框架,它的主要功能是在不修改代码的情况下,监控和记录 Java 应用程序中执行的所有 SQL 语句。这个工具对于开发者来说非常有用,因为它可以帮助定位性能瓶颈,特别是在使用 ORM(对象关系...

    下载 p6spy.jar (内含使用步骤)

    1. **SQL日志记录**:P6Spy 可以捕获并记录应用程序执行的所有SQL语句,包括参数和执行时间,这对于调试和性能分析非常有用。 2. **格式化输出**:P6Spy 提供了自定义的日志格式,可以按照开发者的需求定制输出信息...

    使用P6Spy和IronTrack SQL进行性能监控

    P6Spy通过拦截并记录SQL语句,为开发者提供了一种无侵入式的监控解决方案。它的工作原理是在JDBC驱动层插入一个代理,所有数据库访问请求都会经过这个代理,因此可以捕获到所有的SQL操作。P6Spy的配置相对简单,只...

    p6spy使用说明.doc

    P6Spy的工作原理是通过代理模式,拦截SQL语句并记录其执行情况,这有助于开发者进行性能优化和问题排查。 一、P6Spy简介 P6Spy是一个SQL日志记录器,它能够捕获并记录应用程序中的所有数据操作,包括插入、更新、...

    P6Spy 提供数据库性能监控和剖析工具

    通过 P6Spy 我们可以对 SQL 语句进行拦截,相当于一个 SQL 语句的记录器,这样我们可以用它来作相关的分析,比如性能分析。P6Spy 用 Log4J 来记录 JDBC 调用的日记信息。 自从 2003 年 11 月 30 日 P6Spy 版本 1.3 ...

    监控和剖析数据库 P6Spy、SQL Profiler、IronTrack SQL

    P6Spy通过拦截和记录SQL语句,为开发者提供了详细的日志信息,包括执行时间、连接信息等,有助于识别慢查询和优化数据库性能。配置P6Spy主要涉及修改数据库驱动类名,设置配置文件路径以及在应用中引入P6Spy的JAR...

    p6spy.rar输出完整带参sql

    它可以在不修改代码的情况下,记录并分析SQL语句,提供详细的执行性能信息,这对于优化数据库操作、排查问题和提升应用程序性能非常有帮助。P6Spy适用于多种数据库,包括Oracle、MySQL等,同时也兼容诸如Hibernate和...

    利用P6SPY +SQL Profiler调试、记录、统计web app对数据库的操作

    利用P6SPY +SQL Profiler调试、记录、统计web app对数据库的操作, 可以查看到PreparedStatment的执行最终的SQL语句。 有详细的操作说明 下面的这个是集成的完整版。。太大了就不上传了。自己下吧 jahia_v6_...

    p6spy java 使用

    一旦启用 P6Spy,每次应用程序执行 SQL 语句时,P6Spy 都会记录这些 SQL 的详细信息,包括执行前后的原始 SQL、执行参数、返回结果以及执行时间等,这对于性能调优和问题排查非常有用。 【排除ResultSet】 P6Spy ...

    sqlprofiler+p6spy+配制

    在Java应用中,P6Spy可以捕获和记录所有的SQL请求,而SQL Profiler则可以在服务器端提供更详细的事件追踪。这种组合可以提供从客户端到服务器端的完整查询生命周期的视图,对于诊断复杂的性能问题特别有用。 总的来...

    P6spy 和 SqlProfiler 打印JDBC真实SQL

    P6Spy更侧重于日志记录和简单分析,适合日常开发和持续监控;而SqlProfiler则提供了更深入的分析功能,适用于性能调优和问题诊断。 在实际使用中,我们首先需要下载并添加P6Spy和SqlProfiler的相关依赖到项目中。...

    weblogic server 11g +p6spy +sql profiler 配置

    WebLogic Server 11g是一...通过以上配置,WebLogic Server 11g将能够使用P6Spy和SQL Profiler进行数据库性能监控,为系统的优化提供数据支持。记得定期检查和分析日志,持续优化数据库性能,以保持系统高效稳定运行。

Global site tag (gtag.js) - Google Analytics