Python-Logger-Ausgabe an Stdout umleiten
Im Protokollierungsmodul von Python werden Nachrichten normalerweise basierend auf ihrer Protokollierungsstufe in bestimmte Protokolldateien geschrieben. Allerdings kann es erforderlich sein, dass alle Protokollmeldungen nicht nur in der Protokolldatei, sondern auch zur Standardausgabe (stdout) für Fehlerbehebungs- oder Überwachungszwecke ausgegeben werden.
Um dies zu erreichen, können Sie die Funktion logging.StreamHandler() verwenden. Klasse, mit der Sie die Protokollierungsausgabe nach stdout umleiten können. Der Prozess umfasst das Hinzufügen des StreamHandlers zum Root-Logger, der alle anderen Logger steuert.
Codebeispiel:
<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>
Mit diesem Code werden alle vom Logger generierten Protokollierungsmeldungen angezeigt.warning Die Methoden logger.critical und logger.error werden sowohl in die Protokolldatei als auch in stdout geschrieben, was einen bequemen Zugriff auf wichtige Fehler- und Warnmeldungen während der Entwicklung oder Überwachung von Vorgängen ermöglicht.
Das obige ist der detaillierte Inhalt vonWie gebe ich Python-Logger-Meldungen in die Standardausgabe (Stdout) aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!