Connexion à la fois au fichier et à la sortie standard en Python avec le module de journalisation
Lors de l'utilisation du module de journalisation Python, il est souhaitable d'afficher les messages de journalisation non seulement vers le fichier journal spécifié, mais également vers la sortie standard pour une visibilité immédiate. Pour y parvenir, le module de journalisation fournit une solution simple.
La configuration de journalisation s'appuie sur des gestionnaires pour diriger la sortie. En ajoutant une instance logging.StreamHandler() au logger racine, il est possible d'envoyer des messages à stdout en plus de leurs destinations prévues.
Un exemple de configuration d'un gestionnaire de flux pour la sortie stdout :
<code class="python">import logging import sys # Get the root logger root = logging.getLogger() # Set the root logger level to DEBUG root.setLevel(logging.DEBUG) # Create a stream handler and set its level to DEBUG handler = logging.StreamHandler(sys.stdout) handler.setLevel(logging.DEBUG) # Create a formatter to format the log messages formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') handler.setFormatter(formatter) # Add the handler to the root logger root.addHandler(handler)</code>
En implémentant cette configuration, il devient inutile de dupliquer les messages de journal en utilisant à la fois les méthodes logger et les instructions d'impression stdout. Les enregistreurs tels que mylogger.critical("something failed") afficheront à la fois le fichier journal désigné et la sortie standard, offrant une visibilité immédiate tout en maintenant des pratiques de journalisation appropriées.
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!