본문 바로가기

Java & iBatis

모든걸 보여주마.. Log4SQL PreparedStatement 로그 확인하기




보통 자바환경에서 iBatis를 사용중이라면 log4j를 기본 로거로 많이 사용하게 되는데..
단순 자바 어플 만들면서 이것저것 추가하고 하는게 귀찮다면..

log4sql 을 사용해보자.

간단하지만 성능은 완벽!

PreparedStatement 에 파라미터가 어떻게 들어가서 실행되는지 확인 해보는 것에는 이것만큼 좋은게 없는것 같다.. trace 에서 출력되는 쿼리를 바로 실행할수 있고 어떤것이 파라미터이고 어떤것이 statement인지 구별할수 있는 구분자도 포함되어있다.

일단 다운로드

사용법

다운로드 받은 파일의 압축을 풀면 log4sql.jar 파일이 있다.. 로그확인이 필요한 프로젝트의 라이브러리에 등록한후에 드라이버 경로를 바꿔준다.

자바 내부에서 정의 했다면 String oracleDriver = "oracle.jdbc.driver.OracleDriver"; 형식으로 되어있을꺼고
iBatis를 사용한다면 <property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver"/> 이런식으로 컨피그 xml에 정의되어있을것이다.

이 경로를 'core.log.jdbc.driver.OracleDriver' 이렇게만 바꿔주면 끝..

별도의 설정을 할 수 있게 압축 파일 내부에 log4sql_conf.jsp 파일이 있어서 웹프로젝트일때는 동적으로 설정을 바꿀수 있도록 제공하지만 로그만 보기 위해서는 드라이버만 바꿔주면.. 쿼리 관련 로그들이 전부 출력된다.

세부 설정에서 내가 개발중인 패키지만 등록해서 해당 패키지에서 나오는 로그만 출력되도록 설정할수도 있고. SQL의 순수 실행시간만을 계산해주기 때문에 쿼리 자체의 퍼포먼스 테스트에도 유용하다.

MSSQL, Oracle, Cubrid, PostgreSql, Infomix 등등.. 현존하는 거의 모든 디비를 지원하고.. 비동기 모드도 지원한다.. 

참고]  http://log4sql.sourceforge.net/index_kr.html