Maison >développement back-end >Tutoriel Python >Comment générer des messages de journalisation vers le fichier journal et la sortie standard en Python ?

Comment générer des messages de journalisation vers le fichier journal et la sortie standard en Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-18 19:02:29748parcourir

How to Output Logging Messages to Both Log File and Stdout in Python?

Préserver l'intégrité des messages avec la journalisation Python : sortie vers le fichier journal et la sortie standard

Lors de l'utilisation du module de journalisation de Python, il est souvent souhaitable de sortir simultanément consigner les messages dans un fichier journal et sur la sortie standard. Cela garantit une journalisation complète tout en permettant une visibilité en temps réel des messages critiques ou d'avertissement.

Pour y parvenir, exploitez la puissance des gestionnaires, qui contrôlent la destination des messages de journalisation. En ajoutant un logging.StreamHandler() au logger racine, vous pouvez facilement diriger la sortie vers stdout.

Voici un exemple illustratif :

<code class="python">import logging
import sys

# Configure the root logger with appropriate level
root = logging.getLogger()
root.setLevel(logging.DEBUG)

# Create a stream handler and set its level
handler = logging.StreamHandler(sys.stdout)
handler.setLevel(logging.DEBUG)

# Add a formatter to enhance readability
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)

# Attach the stream handler to the root logger
root.addHandler(handler)</code>

En incorporant ce code dans votre configuration de journalisation, vous pouvez vous assurer que tous les messages de journal (erreur, avertissement, critique) sont non seulement écrits dans votre fichier journal spécifié, mais également affichés de manière pratique sur la sortie standard. Cela élimine le besoin d'instructions d'impression redondantes et fournit une vue complète des activités de journalisation de votre application.

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