프로젝트 소개
Loguru는 전통적인 로깅 설정의 복잡함을 제거하기 위해 설계된 Python 로깅 라이브러리입니다. `from loguru import logger`를 통해 접근 가능한 단일 사전 구성 로거를 제공하며, 시작을 위해 핸들러, 포맷터 또는 필터가 필요하지 않습니다. 로깅 메시지는 `logger.debug()` 또는 `logger.info()`와 같은 메서드를 사용하여 즉시 작성할 수 있으며, 출력은 기본적으로 stderr로 전달됩니다.
주요 기능으로는 자동 로테이션(크기, 시간 또는 기간 기준), 보관 정책 및 압축 기능이 포함된 간편한 파일 로깅, `str.format()`과 호환되는 현대적인 중괄호 스타일의 문자열 포맷팅, 터미널 내 자동 색상 지정, `enqueue=True`를 통한 비동기, 스레드 안전 및 멀티프로세스 안전 로깅 지원, 변수 값을 포함한 전체 예외 트레이스백 표시 등이 있습니다.
JSON 직렬화 및 컨텍스트 바인딩(`bind()`, `contextualize()`, `patch()`)을 통해 구조화된 로깅을 지원합니다. 사용자는 레벨을 사용자 정의하고, 비용이 많이 드는 함수에 대해 지연 평가를 추가하며, 호환성 레이어를 통해 표준 Python 로깅과 통합할 수 있습니다. 환경 변수를 사용하여 포맷이나 색상과 같은 기본 설정을 개인화할 수 있습니다. 또한 Loguru에는 정규식 기반의 로그 추출을 위한 파서가 포함되어 있으며, 오류 알림을 위해 Apprise와 같은 알림 도구와 통합됩니다.
스크립트와 라이브러리 모두를 위해 설계되었으며, 모듈 네임스페이스별로 로깅을 비활성화/활성화할 수 있습니다. 이전에는 내장 로깅보다 10배 빠르다고 주장했으나, 이 주장은 현재 폐기되었습니다. 이 라이브러리는 성능이나 유연성을 희생하지 않으면서 사용성, 구성 가능성 및 디버깅 능력을 강조합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.