[python] python-dotenv를 사용한 로깅 설정

로깅(logging)은 파이썬 애플리케이션의 디버깅과 오류 추적을 도와주는 중요한 도구입니다. 로깅을 사용하면 코드에 따로 print문을 추가하지 않고도 원하는 정보를 기록하고 확인할 수 있습니다.

이번 포스트에서는 python-dotenv를 사용하여 로깅 설정을 관리하는 방법에 대해 알아보겠습니다.

1. python-dotenv란?

python-dotenv는 파이썬 환경에서 .env 파일을 사용하여 환경 변수를 설정하는 도구입니다. .env 파일은 YAML 또는 JSON 형식으로 작성되며, 애플리케이션에서 사용하는 환경 변수를 저장하는 용도로 사용됩니다. python-dotenv는 이 .env 파일을 읽어서 환경 변수를 설정해주는 역할을 합니다.

2. python-dotenv 설치하기

python-dotenv를 설치하기 위해 다음 명령을 실행합니다:

pip install python-dotenv

3. 로깅 설정 파일 준비하기

로깅 설정을 관리하기 위해 .env 파일을 사용하기 위해서는 먼저 .env 파일을 작성해야 합니다. 이 .env 파일에는 로깅에 필요한 환경 변수들을 추가합니다. 예를 들어, 다음과 같이 작성할 수 있습니다:

LOG_LEVEL=DEBUG
LOG_FILE_PATH=/var/log/myapp.log

위의 예시에서는 로깅 레벨을 DEBUG로 설정하고 로그 파일의 경로를 /var/log/myapp.log로 지정하였습니다.

4. 로깅 설정하기

이제 실제로 로깅을 설정하는 파이썬 코드를 작성해보겠습니다. 로깅을 사용하기 위해 logging 모듈을 불러온 후, python-dotenv를 사용하여 .env 파일의 환경 변수들을 설정합니다. 다음은 예시 코드입니다:

import logging
from dotenv import load_dotenv

load_dotenv()

log_level = os.getenv("LOG_LEVEL")
log_file_path = os.getenv("LOG_FILE_PATH")

logging.basicConfig(level=log_level, filename=log_file_path, format='%(asctime)s - %(levelname)s - %(message)s')

# 로그 출력
logging.debug("디버그 메시지")
logging.info("인포 메시지")
logging.warning("경고 메시지")
logging.error("에러 메시지")

위의 코드에서는 load_dotenv() 함수를 사용하여 .env 파일의 환경 변수들을 로드합니다. os 모듈을 사용하여 환경 변수 값을 가져온 후, logging.basicConfig() 함수를 사용하여 로깅 설정을 초기화합니다. 이제 로그를 출력하는 코드를 작성하면 됩니다.

5. 결론

python-dotenv를 사용하면 파이썬 애플리케이션의 로깅 설정을 관리하는 것이 매우 편리해집니다. 환경 변수를 .env 파일에 저장하고 이를 python-dotenv를 통해 설정하는 방법을 익히면, 애플리케이션의 로그를 효과적으로 다룰 수 있습니다.