개발

p6spy을 이용하여 Sql로깅하기.

학생. 2007. 3. 9. 22:01
PreparedStatement를 사용해 질의시에 바인딩변수까지 포함해서 로그를 남겨주는 오픈소스 소프트웨어입니다.

SELECT * FROM MYTABLE WHERE ACOL = ? AND BCOL = ?
의 형식으로 보던 것을

SELECT * FROM MYTABLE WHERE ACOL = 'VALUE1' AND BCOL = 'VALUE2'
처럼 보실수 있습니다.

http://www.p6spy.com/에서 소개와다운로드를 받으실수 있습니다.

Tomcat5에 셋팅시에 사이트에 문서와는 조금 다르게 셋팅을 해야 합니다.
/톰캣홈/common/lib에 p6spy.jar를넣어두신다면
spy.properties파일을 /톰캣홈/common/classes/아래에넣어주시면 됩니다.
Tomcat4처럼 해당 경로가 없는경우에는 classes를 생성하시고 넣어주시면 되겠습니다.

common/lib가 아닌 특정 컨텍스트에 넣으시는 경우에는 ../WEB_INF/lib에 p6spy.jar를 넣으시고
../WEB_INF/classes에 spy.properties를 넣어주시면 됩니다.
해당 컨텍스트의 lib에 넣은경우는 톰캣로딩후 class를 찾지못해서 톰캣구동시 jar경로를 지정해주니 잘되었습니다.

그리고 DBCP를 사용하시는 경우라면 원래설정되어 있는oracle.jdbc.driver.OracleDriver부분을
com.p6spy.engine.spy.P6DataSource로 설정해주시면 됩니다.






반응형