JBoss [사례] JBoss EAP 6/7 STDOUT/STDERROR 로그 필터링
페이지 정보

본문
|
[사례] JBoss EAP 6/7 STDOUT/STDERROR 로그 필터링 |
|
|
증상 |
[stdout] 로그가 대량으로 발생하여 디스크 사용량 급격히 증가 |
|
문의사항 |
[stdout] 로그 필터링 가능 유무 문의 |
|
원인분석 |
애플리케이션의 System.out.println() 메서드로 인해 출력되는 로그로 추정 |
|
조치 |
[stdout] 로그 필터링 후 로그 레벨을 OFF로 조정하여 조치 확인 |
|
1. 테스트 애플리케이션 배포 (http://192.168.10.80/session) |
|
|
|
// [F5 - 새로고침] 버튼 클릭 시 웹페이지의 세션값이 변경되면서 로그 출력 $ tail -f server.log
~ 2025-02-26 14:19:53,197 INFO [stdout] (default task-2) session=fFGKOL5r0DUR3xcsugyauRPt-5fckShJmUCg298F ~
|
|
2. 로그 비교 |
|
|
session.war 배포 로그 |
2025-02-26 14:19:19,738 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) WFLYSRV0010: Deployed "session.war" (runtime-name : "session.war") |
|
session.war 동작 로그 |
2025-02-26 14:19:53,197 INFO [stdout] (default task-2) session=fFGKOL5r0DUR3xcsugyauRPt-5fckShJmUCg298F |
|
1) 애플리케이션 배포는 엔진에 의해서 작동이 되어 [org.jboss.as.server] 로그로 분류되어 출력 2) 애플리케이션 동작은 엔진의 동작으로 분류되지 않기 때문에 [stdout] 로그로 출력 3) 자바에서 동작에 대한 결과 출력을 확인하는 System.out.println() 메서드에 의해 [stdout] 로그가 출력된 것으로 확인
|
|
|
3. STDOUT / STDERROR 설정 |
|
|
3.1. 핸들러 설정 |
|
|
@CLI /] /subsystem=logging/periodic-rotating-file-handler=CONSOLE-LOG-FILE:add(file={"relative-to"=>"jboss.server.log.dir", "path"=>"stdout.log"}, append=true, suffix=".yyyy-MM-dd", level=INFO, formatter="%d %-5p [%c] (%t) %s%e%n") |
|
|
@standalone-ha.xml
~ <level name="INFO"/> <formatter> <pattern-formatter pattern="%d %-5p [%c] (%t) %s%e%n"/> </formatter> <file relative-to="jboss.server.log.dir" path="stdout.log"/> <suffix value=".yyyy-MM-dd"/> <append value="true"/> </periodic-rotating-file-handler> ~ |
|
|
3.2 로거 설정 |
|
|
@CLI /] /subsystem=logging/logger="stdout":add(category="stdout",handlers=["CONSOLE-LOG-FILE"],level=OFF,use-parent-handlers=false) |
|
|
@standalone-ha.xml
~
<level name="OFF"/> <handlers> <handler name="CONSOLE-LOG-FILE"/> </handlers> </logger>
~ |
|
4. 테스트 결과 |
|
|
AS-IS |
server.log 에서 [stdout] 로그 발생 |
|
TO-BE |
- 핸들러 설정으로 stdout.log 로그 파일이 따로 생성되었으나 로그레벨이 OFF 이기 때문에 로그는 발생하지 않음 - 필요에 의해 [stdout] 로그를 발생시킬 상황이 생긴다면 로그 레벨을 OFF → INFO 로 변경하면 로그 발생하면서 모니터링 가능 ( <level name="OFF"/> → <level name="INFO"/> )
|
|
5. 참조 문서 |
|
|
[URL] How to suppress or separate STDOUT / STDERR logs from server.log in JBoss 4 / 5 |
|
|
[URL] How to redirect STDOUT and STDERR logging from server.log to another file in EAP 6/7? |
https://access.redhat.com/solutions/3087821 |
- 이전글[사례] JBoss EAP 7.4.X 애플리케이션 재배포 시 이상 동작 발생 25.03.17
- 다음글성능 모니터링을 위한 오픈소스 APM 테스트5 24.04.16
댓글목록
등록된 댓글이 없습니다.
