Python에서 동시에 Stdout 및 로그 파일에 로그 쓰기
Python에서 중요한 정보를 디버깅하고 캡처하려면 로그 출력 제어가 필수적일 수 있습니다. 로깅 모듈은 메시지를 파일에 기록하기 위한 광범위한 기능을 제공합니다. 그러나 즉각적인 가시성을 위해 콘솔(stdout)에 로그를 표시하는 것도 도움이 될 수 있습니다.
해결책:
모든 로깅 메시지가 stdout으로 출력되도록 하려면 지정된 로그 파일 외에도 루트 로거에 login.StreamHandler()를 추가하여 로깅 모듈의 기능을 확장할 수 있습니다.
구현:
<code class="python">import logging import sys # Capture stdout stdout = sys.stdout # Create a root logger root = logging.getLogger() # Set the logging level (DEBUG in this case) root.setLevel(logging.DEBUG) # Define the StreamHandler handler = logging.StreamHandler(stdout) # Configure the message format formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') handler.setFormatter(formatter) # Add the StreamHandler to the root logger root.addHandler(handler)</code>
이 수정을 통해 logger.warning, logger.tical 및 logger.error와 같은 메서드를 사용하여 기록된 모든 메시지는 구성된 로그 파일에 기록되고 stdout에 직접 표시됩니다. 이를 통해 문제 해결이 단순화되고 즉시 검사를 위해 메시지에 쉽게 액세스할 수 있습니다.
위 내용은 Python에서 Stdout과 로그 파일에 동시에 로그인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!