kafka 기술문서

카프카 애플리케이션의 로그 파일 종류와 역할

saay-hi 2024. 6. 27. 17:56
로그 파일 이름 설명
server.log 브로커 설정 정보와 정보성 로그 등을 기록함. 
브로커를 재시작하는 경우 브로커의 옵션 정보가 기록됨
state-change.log 컨트롤러부터 받은 정보를 기록함
kafka-request.log 클라이언트로부터 받은 정보를 기록함
log-cleaner.log 로그 컴팩션 동작들을 기록함
controller.log 컨트롤러 관련 정보를 기록함
kafka-authorizer.log 인증과 관련된 정보를 기록함

카프카에서는 log4j를 이용해 여러가지 로그 파일들을 기록하고 있음

따라서 관리자는 디버깅이나 오류 확인 및 분석 드잉 필요한 경우 로그 레벨을 변경할 수 있음

 

log4j 로그 레벨
로그 레벨 설명
TRACE DEBUG보다 상세한 로그를 기록함
DEBUG 내부 에플리케이션 상황에 대한 로그를 기록함(INFO 로그 레벨보다 상세한 로그 기록)
INFO 로그 레벨의 기본값이며, 일반적인 정보 수준의 로그를 기록함
WARN INFO 로그 레벨보다 높은 개념으로, 경고 수준의 로그를 기록함
ERROR 경고 수준을 넘어 런타임 에러나 예상하지 못한 에러 로그를 기록함
FATAL 로그 레벨 중 최종 단계이며, 심각한 오류로 인한 애플리케이션 중지 등의 로그를 기록함

 

log4 파일 내용 확인

log4j 파일 경로 : kafka/config/log4j.properties

 

로그 레벨 변경
$> vi log4j.properties


log4j.logger.kafka=DEBUG
log4j.logger.org.apache.kafka=DEBUG

 

로그 파일 확인
카프카 애플리케이션 로그 파일 경로 :  /kaf_log/server.log

 

*주의할 점 : log레벨을 INFO에서 DEBUG 또는 TRACE로 낮출 경우, 예상보다 많은 양의 로그가 발생하며 이 모든 로그는 로컬 디스크에 기록됨. 이로 인해 브로커의 여유 디스크 공간이 로그 파일로 가득 채워질 수 있음.

따라서 로그 레벨을 변경하기 전에는 반드시 여유 디스크 공간이 충분한지 확인해야 하며, 로그 레벨 변경은 꼭 필요한 경우에만 수행 권장