Python
[Python] Logging 모듈 사용해서 로그 남기기
teamnova
2025. 9. 7. 19:16
728x90
안녕하세요
오늘은 파이썬의 Logging 모듈을 사용해서 로그 남기는 방법에 대해서 알아보도록 하겠습니다.
logging 모듈은 프로그램 실행 중 발생하는 메시지를 체계적으로 기록하는 표준 파이썬 라이브러리입니다.
print()로 디버깅을 많이 하시겠지만, 프로젝트가 커지면 logging이 훨씬 유용해집니다.
이번 예제에서는,
main.py
module_a.py
module_b.py
총 3개의 파일이 유기적으로 작동하는것을 기준으로
system.log 파일에 기록을 남겨보도록 하겠습니다.
전체 코드입니다.
main.py
import logging
import module_a
import module_b
logging.basicConfig(
filename="system.log",
level=logging.DEBUG,
format="%(asctime)s [%(levelname)s] %(name)s - %(message)s"
)
logging.info("메인 실행 시작")
module_a.do_something()
module_b.do_work()
module_a.py
import logging
def do_something():
logger = logging.getLogger("module_a")
logger.info("module_a 작업 수행 중")
module_b.py
import logging
def do_work():
logger = logging.getLogger("module_b")
logger.warning("module_b에서 경고 발생!")
실행결과 system.log 파일이 생성되도록 했습니다.
기존의 print()는 콘솔에만 찍히지만, logging은 파일에 남겨서 나중에 분석 가능하다는 장점이 있습니다.
system.log
2025-09-07 14:33:42,484 [INFO] root - 메인 실행 시작
2025-09-07 14:33:42,484 [INFO] module_a - module_a 작업 수행 중
2025-09-07 14:33:42,484 [WARNING] module_b - module_b에서 경고 발생!