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>
このコードを配置すると、ロガーによって生成されるすべてのログ メッセージが表示されます。warning 、logger.critical、および logger.error メソッドはログ ファイルと標準出力の両方に書き込まれるため、開発または監視操作中に重要なエラーおよび警告メッセージに簡単にアクセスできるようになります。
以上がPython ロガーメッセージを標準出力 (Stdout) に出力するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。