P6spy es una herramienta super
sencilla para hacer seguimiento de la interacción entre
tu aplicación y la BD.
Te permite loguear tus sentencias PL/SQL y tambien que queries son
los mas lentos (previa configuracion que comento mas adelante).
Pasos para instalación:
1) Bajar la herramienta
Dowload P6spy
2) Extraer y colocar jar y properties en tu proyecto.
Luego al extraerlo, encontraras un p6spy.jar y un spy.properties.
El p6spy.jar lo pones en tu WEB-INF/lib del proyecto a monitorear.
Y tu spy.properties en tu carpeta src o classpath en general.
3) Donde estas conectandote a tu bd, cambia el driver que estas usando, por el de p6spy, por ejemplo:
driverClassName --> com.p6spy.engine.spy.P6SpyDriver (en tu applicationContext.xml por ejemplo.)
4) En el archivo spy.properties, pones el verdadero driver:
# oracle driver
realdriver=oracle.jdbc.driver.OracleDriver
5) Si deseas le das la ruta donde quieres que se genere tu archivo spy.log (también se configura esto en el spy.properties)
# name of logfile to use
logfile = c:/temporal/spy.log
Listo , correr la aplicación web y disfrutar del log para hacer seguimiento a todo los queries que se ejecutan.
EPILOGO:
outagedetection=false
outagedetectioninterval=
Estas dos te permiten , poner a true y luego decirle cuanto tiempo no debe pasar para considerarlo un query normal, sino pasa a categoria lento.
Disfrutenlo!
Jose
Estimado, estoy ocupando la configuración que dices sin embargo no me pinta ninguna instrucción SQL.
ResponderBorrarLo único que tiene el spy.log es:
1271261094139|-1||debug||com.p6spy.engine.common.P6SpyOptions reloading properties
1271261094139|-1||info||Using properties file: D:\p6spy\spy.properties
1271261094139|-1||info||No value in environment for: getStackTrace, using: false
1271261094139|-1||info||No value in environment for: getFilter, using: true
1271261094139|-1||info||No value in environment for: getDeregisterDrivers, using: false
1271261094139|-1||info||No value in environment for: getUsePrefix, using: false
1271261094139|-1||info||No value in environment for: getExecutionThreshold, using: 0
1271261094139|-1||info||No value in environment for: getAutoflush, using: true
1271261094139|-1||info||No value in environment for: getExclude, using:
1271261094139|-1||info||No value in environment for: getExcludecategories, using: info,debug,result,batch
1271261094139|-1||info||No value in environment for: getInclude, using: select, insert, update
1271261094139|-1||info||No value in environment for: getIncludecategories, using:
1271261094139|-1||info||No value in environment for: getLogfile, using: spy.log
1271261094139|-1||info||No value in environment for: getAppender, using: com.p6spy.engine.logging.appender.FileLogger
1271261094139|-1||info||No value in environment for: getRealdriver, using: oracle.jdbc.driver.OracleDriver
1271261094139|-1||info||No value in environment for: getRealdriver2, using:
1271261094139|-1||info||No value in environment for: getRealdriver3, using:
1271261094139|-1||info||No value in environment for: getAppend, using: true
1271261094139|-1||info||No value in environment for: getSpydriver, using: com.p6spy.engine.spy.P6SpyDriver
1271261094139|-1||info||No value in environment for: getDateformat, using:
1271261094139|-1||info||No value in environment for: getDateformatter, using: null
1271261094139|-1||info||No value in environment for: getStringmatcher, using: com.p6spy.engine.common.SubstringMatcher
1271261094139|-1||info||No value in environment for: getStringMatcherEngine, using: com.p6spy.engine.common.SubstringMatcher@1d0feea
1271261094139|-1||info||No value in environment for: getStackTraceClass, using:
1271261094139|-1||info||No value in environment for: getSQLExpression, using: null
1271261094139|-1||info||No value in environment for: getReloadProperties, using: false
1271261094139|-1||info||No value in environment for: getReloadPropertiesInterval, using: 60
1271261094139|-1||info||No value in environment for: getJNDIContextFactory, using: null
1271261094139|-1||info||No value in environment for: getJNDIContextProviderURL, using: null
1271261094139|-1||info||No value in environment for: getJNDIContextCustom, using: null
1271261094139|-1||info||No value in environment for: getRealDataSource, using: null
1271261094139|-1||info||No value in environment for: getRealDataSourceClass, using: null
1271261094139|-1||info||No value in environment for: getRealDataSourceProperties, using: null
Podrías ayudarme para saber que puede estar pasando que no pinta ninguna instrucción sql.
Gracias.
Saludos
Felipe, yo hice un nuevo post donde cambie la configuración y ahi me aparecia el log.
ResponderBorrarEste es: http://josediazdiaz.blogspot.com/2010/03/p6spy.html o tambien probaste con este y no te muestra nada?
Usa la propiedad del hibernate.show_sql = true y anda bien.
ResponderBorrarJulio M. Oliveira - Buenos Aires