PYTHON - LOG파일 일별, 날짜별 생성

2024. 11. 23. 11:15·개발/PYTHON
728x90
반응형
import datetime
import logging
import logging.handlers


def get_logger(name=None):
    logger = logging.getLogger(name)
    logger.setLevel(logging.INFO)

    # 중복 방지 설정
    logger.propagate = False

    # 기존 핸들러 제거 (필요 시)
    if logger.hasHandlers():
        logger.handlers.clear()

    # log format
    formatter = logging.Formatter("%(asctime)s | %(levelname)s | %(filename)s:%(lineno)d | %(message)s", datefmt="%Y-%m-%d %H:%M:%S")

    # log 파일에 기록 (일별 생성)
    console = logging.StreamHandler()

    pwd = '{log 쌓을 경로}'
    today = datetime.datetime.now().strftime("%Y-%m-%d")

    handler_info = logging.handlers.TimedRotatingFileHandler(
        filename=f"{pwd}/{today}.log",
        when="midnight",
        interval=1,
        encoding="utf-8")
    handler_error = logging.handlers.TimedRotatingFileHandler(
        filename=f"{pwd}/{today}.log",
        when="midnight",
        interval=1,
        encoding="utf-8")

    handler_info.setFormatter(formatter)
    handler_error.setFormatter(formatter)

    # level setting
    console.setLevel(logging.INFO)
    handler_info.setLevel(logging.INFO)
    handler_error.setLevel(logging.ERROR)

    # format
    console.setFormatter(formatter)
    handler_info.setFormatter(formatter)
    handler_error.setFormatter(formatter)

    # add handler
    logger.addHandler(console)
    logger.addHandler(handler_info)
    logger.addHandler(handler_error)

    return logger

 

728x90
반응형
저작자표시 (새창열림)

'개발 > PYTHON' 카테고리의 다른 글

PYTHON - LOG 파일명  (0) 2024.11.25
PYTHON - 재귀 함수 (피보나치, 하노이의 탑, 최소공배수 등)  (0) 2024.11.21
Python 용량 변환  (0) 2024.11.11
Python IMAP 메일 연동  (1) 2024.11.08
CGI, WSGI, ASGI  (4) 2024.09.12
'개발/PYTHON' 카테고리의 다른 글
  • PYTHON - LOG 파일명
  • PYTHON - 재귀 함수 (피보나치, 하노이의 탑, 최소공배수 등)
  • Python 용량 변환
  • Python IMAP 메일 연동
joolog
joolog
  • joolog
    JOO
    joolog
  • 전체
    오늘
    어제
    • 분류 전체보기 (165)
      • 개발 (83)
        • JAVA (29)
        • PYTHON (9)
        • AWS (15)
        • DOCKER (2)
        • PERCONA (2)
        • ORACLE (14)
        • MYSQL (1)
        • 알고리즘 (0)
        • 기타 (11)
      • 툴 (5)
        • MARKDOWN (1)
        • GIT (1)
        • DOCKER (1)
        • PyCharm (2)
        • IntelliJ (0)
      • 일상 (35)
        • 맛집 (6)
        • 카페 (2)
        • 요리 (4)
        • 글씨 연습 (2)
        • 그저 일상 (7)
        • 내돈 내산 (11)
        • 홍보 (1)
      • 국내 여행 (1)
      • 해외 여행 (15)
        • 체코-오스트리아 (10)
        • 일본 (5)
      • 암 일지 (26)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
    • 관리
    • 티스토리 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    글씨연습
    동위원소
    오라클
    요양병원
    mysql
    자바JDBC
    Oracle
    저요오드식
    체코
    재발
    히로시마
    jdbc
    성모샘쉼터
    티스토리챌린지
    오닉스 리프3
    자바
    갑상선 암
    잘츠부르크
    오블완
    오스트리아
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
joolog
PYTHON - LOG파일 일별, 날짜별 생성
상단으로

티스토리툴바