프로그래밍/Python

Using Rotating-Logging in Python

bluecandyg 2022. 8. 17. 13:47
  • Python 에서 Log 를 생성할 때 사용하는 기본 내장형 모듈
  • Linux 기반에서는 많이 사용 : tail -F xxxx.log 식으로 사용하며 모니터링 용으로도 사용함

  • 아래 코드는 10Mb 단위의 로그 파일을 최대 5개까지만 생성하여 로그 유지
  • 용량 기준으로만 생성되고 삭제되기 때문에 로그량에 따라 최대 갯수를 늘리거나 줄여야함
import logging
from logging.handlers import RotatingFileHandler

# CREATE LOG - GLOBAL PARAMETER
logger = logging.getLogger('xxx')

def setting_logging():

    # file max size를 10MB로 설정 
    file_max_bytes = 10 * 1024 * 1024

    # 로그의 출력 기준 설정
    logger.setLevel(logging.INFO)

    # log 출력 형식
    formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

    # log 출력
    stream_handler = logging.StreamHandler()
    stream_handler.setFormatter(formatter)
    logger.addHandler(stream_handler)

    # log를 파일에 출력
    # file_handler = logging.FileHandler('./log/xxx_sending.log')
    file_handler = RotatingFileHandler('./log/xxx_sending.log', maxBytes=file_max_bytes, backupCount=5)
    file_handler.setFormatter(formatter)
    logger.addHandler(file_handler)
    
    
# Using Sample
logger.info('# Zip File Extract START.')

 

  • Result Sample
2021-12-29 08:37:30,162 - xxx - INFO - ######################################
2021-12-29 08:37:31,262 - xxx - INFO - # xxxx Sending PROCESS START.
2021-12-29 08:43:28,117 - xxx - INFO - ######################################
2021-12-29 08:43:30,265 - xxx - INFO - # xxxxx Sending PROCESS START.
2021-12-29 08:43:30,272 - xxx - INFO - # Zip File Search START.
2021-12-29 08:43:30,273 - xxx - INFO - # Total Zip File Search Count : 10

'프로그래밍 > Python' 카테고리의 다른 글

[Python3] ZIP Function  (0) 2023.01.12
Using Slack Webhook in Python  (0) 2022.08.17
Zip Extract on Memory (Python)  (0) 2022.08.17
FTP Sending From Memory (Python)  (0) 2022.08.17
Python 실행 파일 만들기  (0) 2021.06.29