Maison >développement back-end >Tutoriel Python >Comment afficher les messages de l'enregistreur Python vers la sortie standard (Stdout) ?

Comment afficher les messages de l'enregistreur Python vers la sortie standard (Stdout) ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-18 19:02:03372parcourir

How to Output Python Logger Messages to Standard Output (Stdout)?

Rediriger la sortie de l'enregistreur Python vers Stdout

Dans le module de journalisation de Python, les messages sont généralement écrits dans des fichiers journaux spécifiques en fonction de leur niveau de journalisation. Cependant, vous devrez peut-être que tous les messages de journal soient générés non seulement vers le fichier journal, mais également vers la sortie standard (stdout) à des fins de dépannage ou de surveillance.

Pour y parvenir, vous pouvez utiliser logging.StreamHandler() classe, qui vous permet de rediriger la sortie de journalisation vers stdout. Le processus implique l'ajout du StreamHandler au logger racine, qui contrôle tous les autres loggers.

Exemple de code :

<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>

Avec ce code en place, tous les messages de journalisation générés par le logger.warning , logger.critical et logger.error seront écrites à la fois dans le fichier journal et sur la sortie standard, permettant un accès pratique aux messages d'erreur et d'avertissement cruciaux pendant les opérations de développement ou de surveillance.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn