windows node를 추가하고 빌드 테스트를 하는데 

console 로그에서 한글이 깨지는게 몹시 거슬렸다. 


그래서 연말에 어수선한 틈을 타서 삽질시작.

넘어오는 데이터의 인코딩을 의심하고 

노드 config > java Web start > 고급 설정에 JVM 옵션이 있어서 file.encoding을 넣어주고

windows에서 다시 받아서 실행 하였다. 


visual vm으로 보니 system properties 에 설정이 안된것을 확인. 

검색 해보고 jnlp 파일을 열어서 수정하였다. 

결과는 실패.  

maven surefire , log4j 인코딩을 모두 확인해 보았다.

결과는 모두 실패. 

같이 분석해 주시던 부장님께서 log 파일의 한글 부분만 잘라서  od -x 로 어떤 인코딩인지 분석하는 중에 

힌트를 얻어서  maven 로그와 상단의 SVN, 히스토리 로그의 인코딩이 다른것을 확인. 


사용자 이름을 영어로 수정하니 vi 에서는 한글이 안깨지고 잘나오는 것을 확인.

다시 돌려 보았다

결과는 또 실패. 


데이터가 넘어오는 것은 UTF-8이나 windows에서는 ms949(cp949)로 넘어오는 것을 간단한 테스트를 통해 확인.

넘어오는 로그가 ms949가 되도록 vm에 해줬던 -Dfile.encoding 을 제거해서 시스템 인코딩을 사용하게 하였더니.

성공.


java web start의 문제인가 싶어서 ssh로 테스트 해보려고 했지만 귀차니즘..

다음 windows node를 연결할땐 ssh 로 해봐야겠다. (되는지 확실치 않으니 먼저 검색해보고..)

코슈케 아저씨에게 물어보고 싶은 마음이 가득해서 jenkins user groups과 jenkins 한국 groups에 문의할려고 

서성거리다가 하지 못 했다.


jenkins는 node의 시스템 케릭터셋을 가져와서 로그를 뿌려줄때 인코딩 해주는것 같은데

어떤 값을 가져와서 하는지는 못 찾았다. 


오히려 이렇게 되어있으면 인코딩 신경안써도 한글이 안깨지고 잘 나올것 같다. 



'JENKINS' 카테고리의 다른 글

[휴면해제기념]jenkins 빌드결과 메일알림.  (0) 2015.01.22
Posted by 마법수정화살
,