將Python 記錄器輸出重新導向到Stdout
在Python 的日誌模組中,訊息通常會根據日誌記錄等級寫入特定的日誌檔。但是,您可能需要將所有日誌訊息不僅輸出到日誌文件,還需要輸出到標準輸出(stdout)以進行故障排除或監控。
要實現此目的,您可以使用logging.StreamHandler()類,它允許您將日誌輸出重定向到標準輸出。該過程涉及將 StreamHandler 新增至根記錄器,該根記錄器控制所有其他記錄器。
程式碼範例:
<code class="python">import logging import sys # Retrieve the root logger root = logging.getLogger() # Set the root logger's logging level (optional, if needed) root.setLevel(logging.DEBUG) # Create a StreamHandler that redirects logging output to stdout handler = logging.StreamHandler(sys.stdout) # Set the logging level for the handler (optional, if needed) handler.setLevel(logging.DEBUG) # Define a formatter for the log messages formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') # Set the formatter for the handler handler.setFormatter(formatter) # Add the StreamHandler to the root logger root.addHandler(handler)</code>
使用此程式碼,由logger.warning 產生的所有日誌訊息、 logger.ritic 和logger.error 方法將寫入日誌檔案和標準輸出,以便在開發或監控操作期間方便地存取關鍵錯誤和警告訊息。
以上是如何將 Python 記錄器訊息輸出到標準輸出 (Stdout)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!