FileHandler 를 사용하면 로그파일은 크기가 제한없이 커지는데요. 로그 파일 회전을 지원하는 RotatingFileHandler 을 알아보겠습니다. filename: 파일이름 mode: 쓰기 모드 (default:
'a') maxBytes: 백업할 로그 파일의 최대 크기 (Bytes) backupCount: 백업 로그 파일 개수 다음 예제는 FileHandler 을 사용하여 로그파일 크기가 500 KB 까지 반복합니다. 백업파일
크기 1KB, 백업파일 개수 5개로 지정했습니다.
다음과 같이 진행해보았습니다.
뒤로 밀면서 덮어쓰여지는 것을 확인할 수 있습니다. 참고logging.handlers — 로깅 처리기 — Python 3.8.5 문서 소스 코드: Lib/logging/handlers.py 다음과 같은 유용한 처리기가 패키지에서 제공됩니다. 3개의 처리기(StreamHandler, FileHandler, NullHandler)는 실제로는 logging 모듈 자체에 정의되어 있지만, 다른 처리기들� docs.python.org Logging개발을 하면서 에러나는 부분이 어디인지, 왜 에러가 났는지 알아야 하는 경우가 대다수인데 Logging모듈을 사용해서 간단하게 로그를 찍어보는 것을 해보았다. 1. 로깅 모듈 import
따로 설치할 필요 없이 바로 lib사용하면 된다. 2. 로깅 레벨 지정하기 Logging의 디폴트 레벨은 'Warning'이고,
LoggerLogging모듈을 사용해서 간단히 로그를 찍어볼 수도 있지만
1. logging.getLogger("log") : 생성"log"라는 특정 로거를 생성한다. 2. logger.setLevel(logging.INFO) : 레벨 설정 로거의 레벨을 'INFO'로 지정해서 그 이상만 출력하도록 했다. 3. logging.StreamHandler() : 핸들러 설정 핸들러 = 로깅한 정보가 출력되는 위치 설정 아래와 같이 설종하면 여러 형식으로 로깅출력을 할 수 있다 :
StreamHandler = 임의의 파일류 객체와 같은 스트림으로 로깅 출력을 보낸다 4. logging.Formatter : 출력 포맷 설정 내가 원하는 형식으로 출력되게끔 설정해줄 수 있다.
+ Exception 예외 메시지 내용 출력하기
main에다가 logger을 보내주고,
예외 메시지를 출력해준다. print(type(inst)) --> 예외의 타입을 출력해줄 수도 있다. 참고 : https://docs.python.org/ko/3/library/logging.handlers.html https://hamait.tistory.com/880 |