개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.17 02:49

output_handler와 logging.handlers에 대한 질문

  • 파이썬러버 11시간 전 2025.03.17 02:49 새글
  • 6
    1
제가 지금 output_handler와 logging.handlers에 대해 공부 중인데,

output_handler가 어떤 역할을 하는지 정확히 모르겠습니다.

logging.handlers에 있는 StreamHandler, FileHandler, RotatingFileHandler의 차이점을 설명해주실 수 있을까요?

또한, 로그를 출력할 때 output_handler를 사용하는 방법에 대해 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  11시간 전



    output_handler는 로깅 시스템에서 로그 메시지를 처리하는 역할을 합니다. 로그 메시지를 출력할 수 있는 다양한 방법을 제공하며, 로그 메시지를 파일, 콘솔, 네트워크 등으로 출력할 수 있습니다.

    logging.handlers는 로깅 시스템에서 로그 메시지를 처리하는 핸들러를 제공합니다. StreamHandler는 로그 메시지를 콘솔에 출력하는 핸들러입니다. FileHandler는 로그 메시지를 파일에 출력하는 핸들러입니다. RotatingFileHandler는 로그 메시지를 파일에 출력하며, 파일 크기가 최대 크기까지 도달하면 파일을 교체하는 핸들러입니다.

    로그를 출력할 때 output_handler를 사용하는 방법은 다음과 같습니다.

    1. output_handler를 로깅 시스템에 등록합니다.
    2. 로그 메시지를 생성합니다.
    3. 로그 메시지를 output_handler에 전달합니다.

    예를 들어, StreamHandler를 사용하는 방법은 다음과 같습니다.

    #hostingforum.kr
    python
    
    import logging
    
    
    
    # 로깅 시스템을 초기화합니다.
    
    logging.basicConfig(level=logging.INFO)
    
    
    
    # output_handler를 로깅 시스템에 등록합니다.
    
    handler = logging.StreamHandler()
    
    logging.getLogger().addHandler(handler)
    
    
    
    # 로그 메시지를 생성합니다.
    
    logger = logging.getLogger()
    
    logger.info('로그 메시지입니다.')
    
    


    예를 들어, FileHandler를 사용하는 방법은 다음과 같습니다.

    #hostingforum.kr
    python
    
    import logging
    
    
    
    # 로깅 시스템을 초기화합니다.
    
    logging.basicConfig(level=logging.INFO, filename='log.txt')
    
    
    
    # output_handler를 로깅 시스템에 등록합니다.
    
    handler = logging.FileHandler('log.txt')
    
    logging.getLogger().addHandler(handler)
    
    
    
    # 로그 메시지를 생성합니다.
    
    logger = logging.getLogger()
    
    logger.info('로그 메시지입니다.')
    
    


    예를 들어, RotatingFileHandler를 사용하는 방법은 다음과 같습니다.

    #hostingforum.kr
    python
    
    import logging
    
    
    
    # 로깅 시스템을 초기화합니다.
    
    logging.basicConfig(level=logging.INFO, filename='log.txt', maxBytes=1024*1024*10, backupCount=5)
    
    
    
    # output_handler를 로깅 시스템에 등록합니다.
    
    handler = logging.handlers.RotatingFileHandler('log.txt', maxBytes=1024*1024*10, backupCount=5)
    
    logging.getLogger().addHandler(handler)
    
    
    
    # 로그 메시지를 생성합니다.
    
    logger = logging.getLogger()
    
    logger.info('로그 메시지입니다.')
    
    

    2025-03-17 02:50

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 4,115건 / 3 페이지

검색

게시물 검색