본문 바로가기

Error

log4j2 로그 물음표, 한글 깨짐 문제 해결 방법(charset 설정)

728x90

✅ 증상

신규 was 서버 옮기고 나서 로그 파일에 한글이 ??? 이렇게 물음표로 나오고 깨지는 현상이 발생했다.

 

 

✅ 해결 방법

PatternLayoutcharset="UTF-8" 추가한다.

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
 <Appenders>
 <Console name="console" target="SYSTEM_OUT">
 <PatternLayout charset="UTF-8" pattern="%d %5p [%c] %m%n" />
 </Console>
 </Appenders>
 <Loggers>
 <Logger name="java.sql" level="DEBUG" additivity="false">
 <AppenderRef ref="console" />
 </Logger>
 <!-- log SQL with timing information, post execution -->
 <Logger name="jdbc.sqltiming" level="DEBUG" additivity="false">
 <AppenderRef ref="console" />
 </Logger>
 <Root level="ERROR">
 <AppenderRef ref="console" />
 </Root>
 </Loggers>
</Configuration>

 

 

 

✅ 참조 사이트(egovframework)

1. 전자정부프레임워크 log4j2.xml 설정 정보

https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte3:fdl:logging:log4j_2:%EC%84%A4%EC%A0%95_%ED%8C%8C%EC%9D%BC%EC%9D%84_%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94_%EB%B0%A9%EB%B2%95

 

2. 전자정부프레임워크 log4j1 에서 log4j2로 마이그레이션 방

https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte3:fdl:logging:log4j_2

 

egovframework:rte3:fdl:logging:log4j_2 [eGovFrame]

Java 6 이상 필요 XML 환경설정 단순화 (Log4j 1.x 와 호환되지 않음) Property 파일을 통한 환경설정을 지원하지 않음 JSON을 통한 환경설정 지원 파라미터 방식으로 Log Message 출력 환경설정 변경시 서버

www.egovframe.go.kr

 

 

✅ 제우스 인코딩 설정

 

Servers > Basic > Basic Info > JVM Option

 -Dfile.encoding=UTF-8 추가

 

Servers > Engine > Web Engine > Basic > 고급선택사항

Request Url Encoding > Forced > UTF-8