[python] python-dotenv를 사용하여 로그 수집 설정하기

로그 수집은 애플리케이션에서 발생하는 중요한 정보를 기록하고 보관하는 중요한 작업입니다. 로그를 수집하면 애플리케이션의 동작을 추적하고 문제를 분석 할 수 있습니다. 이번에는 python-dotenv 라이브러리를 사용하여 로그 수집 설정을 어떻게 할 수 있는지 알아보겠습니다.

1. python-dotenv 라이브러리란?

python-dotenv는 파이썬에서 환경 변수를 쉽게 관리하기 위한 라이브러리입니다. 이 라이브러리를 사용하면 .env 파일에 환경 변수를 저장하고, 애플리케이션에서 해당 변수를 읽어와 사용할 수 있습니다. 이를 통해 애플리케이션 설정을 용이하게 관리할 수 있습니다.

2. python-dotenv 설치하기

먼저, python-dotenv를 설치해야 합니다. 아래의 명령을 사용하여 설치합니다.

pip install python-dotenv

3. .env 파일 생성하기

로그 수집 설정에 필요한 환경 변수들을 저장하기 위해 .env 파일을 생성합니다. 파일 이름은 원하는 대로 지정할 수 있지만, 보통 .env로 사용합니다. 파일은 애플리케이션과 동일한 디렉토리에 위치시킵니다.

.env 파일 내에는 다음과 같은 형식으로 환경 변수를 저장합니다.

예시:

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

위의 예시에서는 LOG_LEVELLOG_FILE 두 개의 환경 변수를 저장하고 있습니다.

4. python-dotenv로 환경 변수 사용하기

이제, .env 파일에 저장된 환경 변수를 파이썬 애플리케이션에서 사용해보겠습니다. 먼저, 다음과 같이 python-dotenv를 임포트합니다.

import dotenv
dotenv.load_dotenv()

위의 코드는 .env 파일을 읽고, 환경 변수들을 현재 프로세스 환경에 로드합니다.

이후, 다음과 같이 환경 변수를 사용하여 로그 수집 설정을 할 수 있습니다.

import logging
import os

log_level = os.getenv("LOG_LEVEL", default="INFO")
log_file = os.getenv("LOG_FILE", default="app.log")

logging.basicConfig(level=log_level, filename=log_file)

# 로그 메시지 예시
logging.debug("This is a debug message")
logging.info("This is an info message")
logging.warning("This is a warning message")
logging.error("This is an error message")

위의 코드에서는 LOG_LEVELLOG_FILE 환경 변수를 사용하여 로그 레벨과 로그 파일 경로를 설정하고 있습니다.

마무리

이제 python-dotenv를 사용하여 로그 수집 설정을 할 수 있는 방법에 대해 알아보았습니다. 이를 통해 애플리케이션의 로그를 쉽게 관리하고 분석할 수 있습니다. 추가적으로 python-dotenv는 다양한 환경 변수 관리에도 유용하게 사용할 수 있으니, 여러분의 프로젝트에 적용해보시기 바랍니다.


참고 문서: