[python] 파이썬에서 데이터베이스 연동 시 로깅 처리하기
데이터베이스는 많은 어플리케이션에서 중요한 역할을 하며, 이에 따라 데이터베이스 작업을 수행할 때 로깅 처리는 매우 중요합니다. 파이썬에서 데이터베이스에 연결하고 쿼리를 실행할 때 발생할 수 있는 예외 상황 및 정보를 로깅하여 추적하고 분석할 수 있습니다. 이번 글에서는 파이썬에서 데이터베이스 연동 시 로깅을 어떻게 처리할 수 있는지 알아보겠습니다.
로깅 라이브러리 선택
파이썬에서는 로깅을 위해 기본 모듈인 logging
을 제공하고 있습니다. 이 모듈을 사용하여 데이터베이스 연동 시 로깅을 구현할 수 있습니다.
import logging
# 로깅 설정
logging.basicConfig(filename='database.log', level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
위 코드는 database.log
파일에 로그를 기록하며, 레벨은 INFO
로 설정되어 있습니다.
데이터베이스 연동 시 로깅
다음은 파이썬에서 데이터베이스에 연결하고 쿼리를 실행할 때의 로깅 예제입니다.
import logging
import pymysql
# 로깅 설정
logging.basicConfig(filename='database.log', level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
# 데이터베이스 연결
conn = pymysql.connect(host='localhost', user='root', password='password', database='mydb')
try:
with conn.cursor() as cursor:
# 쿼리 실행
cursor.execute('SELECT * FROM mytable')
result = cursor.fetchall()
logging.info('쿼리 실행 결과: %s', result)
except Exception as e:
logging.error('에러 발생: %s', e)
finally:
conn.close()
위 코드에서는 pymysql
라이브러리를 사용하여 MySQL 데이터베이스에 연결하고 쿼리를 실행하였습니다. 쿼리 실행 결과나 발생한 에러에 대한 정보가 로그 파일에 기록됩니다.
결론
파이썬에서 데이터베이스 연동 시 로깅을 적절히 처리함으로써 발생할 수 있는 문제에 대한 신속한 대응 및 해결을 도울 수 있습니다. logging
모듈을 사용하여 로깅을 구현하고, 데이터베이스 작업 시 예외 상황 및 결과를 로그로 남겨 추적하면 유용합니다.
위 예제는 MySQL 데이터베이스를 대상으로 하였지만, 다른 데이터베이스에 대해서도 유사한 방식으로 로깅을 처리할 수 있습니다.