오늘은 고급개발자가 되어가기위한 로그 세팅에 대해서 설명하고, 같이 적용해보도록 하겠습니다. 

이것을 사용하게 됨으로써 오류에대한 대처와 인지가 훨씬 수월해질것 같습니다.


회사 입사시
로그를 사용하지 않는 회사는 
퇴사를 고려해봐도 좋다.
-Tony-

pom.xml
		<!-- mysql, mariadb log s 2022.03.14 -->
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<version>2.17.1</version>
		</dependency>

		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-api</artifactId>
			<version>2.17.1</version>
		</dependency>

		<dependency>
			<groupId>org.bgee.log4jdbc-log4j2</groupId>
			<artifactId>log4jdbc-log4j2-jdbc4</artifactId>
			<version>1.16</version>
		</dependency>
		<!-- mysql, mariadb log s 2022.03.15 -->

다음 코드를 추가해줘야 한다.

 

정확한 위치를 설명해주기 어려워서 캡처를 했다.

보통 mvc를 만들면 줄이 비슷할테니 참고하여서 170~172번줄 사이에

</dependency> 위에 삽입해 준다.

 

log4dbc.log4j2.properties 폴더 생성

다음과 같이 이름을 폴더에 생성해준다.

 

log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
log4jdbc.drivers=com.mysql.jdbc.Driver

다음 내용을 폴더 안에다가 넣어주고 저장

root-context.xml

10~12번 줄을 보면 이렇게 두개가 세팅 되어 있을텐데

원래 세팅되어 있던것을 복사하여, 기존에 있던것은 주석처리 해준다.

(이때 주석처리 해주는 이유는 나중에 원상복귀할 경우를 위해서이다.)

그리고

<property name="driverClassName" value="net.sf.log4jdbc.sql.jdbcapi.DriverSpy" />
<property name="url" value="jdbc:log4jdbc:mysql://localhost:3307/alpha" />

양식을 다음과 같이 맞춰준다.  value 틀리지 않게 다시한번더

확인해주는것이 좋다. 코딩은 오타와의 싸움이다.

 

log4j.xml

 

<!-- query log s 2022.02.26 -->
	<logger name="jdbc.sqlonly" additivity="false">
		<level value="info"/>
		<appender-ref ref="console"/>
	</logger>
	
	<logger name="jdbc.sqltiming" additivity="false">
		<level value="warn" />
		<appender-ref ref="console"/>
	</logger>
	
	<logger name="jdbc.audit" additivity="false">
		<level value="warn"/> <appender-ref ref="console"/>
	</logger>
	
	<logger name="jdbc.resultset" additivity="false">
		<level value="warn" />
		<appender-ref ref="console"/>
	</logger>
	
	<logger name="jdbc.resultsettable" additivity="false">
		<level value="info"/>
		<appender-ref ref="console"/>
	</logger>
<!-- query log e 2022.02.26 -->

다음 파일에 35번 줄부터 <root> 위에 다음 코드를 작성해준다.

그리고 Spring.exe를 나갔다가 재실행 해주고 서버를 작동시키면

console 파일에 다음과 같이 작동상황, 에러등 바로 알 수 있다.

 

 

결과화면

 

 

 

왜, 로그를 안쓰는 회사는 퇴사하라고 하는지 알것같다.


 

 

To be continue..

복사했습니다!