Akashic Records

7.4 로깅 본문

Python for Beginners

7.4 로깅

Andrew's Akashic Records 2023. 3. 23. 13:42
728x90

파이썬의 logging 모듈은 프로그램 실행 중 발생하는 이벤트를 기록하는 데 사용되는 표준 라이브러리입니다. 로깅은 디버깅, 문제 해결, 감사 및 시스템 모니터링과 같은 목적으로 중요합니다. logging 모듈은 로그 메시지를 다양한 출력 대상(파일, 콘솔, 이메일 등)으로 전송할 수 있으며, 메시지의 중요도에 따라 로그 레벨을 설정할 수 있습니다.

로깅 레벨은 다음과 같습니다.

  1. DEBUG: 디버깅에 도움이 되는 세부 정보
  2. INFO: 정상적인 진행 상황 메시지
  3. WARNING: 문제가 될 가능성이 있는 이벤트
  4. ERROR: 프로그램이 일부 기능을 수행하지 못하는 상황
  5. CRITICAL: 프로그램이 전체적으로 실패한 상황

 

기본적인 로깅 설정 및 사용법 예시:

import logging

# 기본 로깅 설정
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')

# 로그 메시지 기록
logging.debug("디버그 메시지")
logging.info("정보 메시지")
logging.warning("경고 메시지")
logging.error("에러 메시지")
logging.critical("치명적인 메시지")

 

파일에 로그를 기록하는 예시:

import logging

# 파일에 로그 기록 설정
logging.basicConfig(filename='example.log', level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')

logging.debug("디버그 메시지")
logging.info("정보 메시지")
logging.warning("경고 메시지")
logging.error("에러 메시지")
logging.critical("치명적인 메시지")

 

로거 객체를 사용하여 로깅 설정을 더 세밀하게 제어하는 예시:

import logging

# 로거 객체 생성
logger = logging.getLogger('my_logger')
logger.setLevel(logging.DEBUG)

# 파일 핸들러 생성
file_handler = logging.FileHandler('example.log')
file_handler.setLevel(logging.DEBUG)

# 로그 메시지 포맷 지정
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
file_handler.setFormatter(formatter)

# 핸들러를 로거에 추가
logger.addHandler(file_handler)

# 로그 메시지 기록
logger.debug("디버그 메시지")
logger.info("정보 메시지")
logger.warning("경고 메시지")
logger.error("에러 메시지")
logger.critical("치명적인 메시지")

 

logging 모듈을 사용하면 프로그램 실행 중 발생하는 이벤트를 기록하고, 분석 및 모니터링에 도움이 되는 정보를 제공할 수 있습니다. 공식 문서를 참조하여 더 많은 기능과 사용법을 확인할 수 있습니다.

728x90

'Python for Beginners' 카테고리의 다른 글

8.1 웹 스크래핑  (0) 2023.03.24
7.5 기타 유용한 라이브러리  (0) 2023.03.23
7.3 정규 표현식  (0) 2023.03.23
7.2 수학 함수  (0) 2023.03.23
7.1 시간과 날짜  (0) 2023.03.23
Comments