Files
2025-07-04 19:26:39 +02:00

44 lines
1.8 KiB
Python

import logging
def logging_with_formatting():
"""
Configurer un peu notre journalisation pour mettre en forme nos messages.
Nous devons utiliser un logger et le configurer pour savoir comment afficher nos
messages.
Un logger peut utiliser plusieurs handlers à la fois, et chacun a pour rôle
de transporter le message original vers une destination (fichier, console etc.)
Les handlers sont configurés en deux étapes : d'abord on choisit le type de
handler (fichier, console, etc.), et ensuite on lui associe un "formateur" pour
savoir comment stocker le message.
Notez : les loggers peuvent avoir un nom, et peuvent ainsi être retrouvés n'importe où
via leur nom pendant l'exécution de votre script, en utilisant la fonction `getLogger`.
"""
logger = logging.getLogger("withformat")
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
# Créer une nouvelle configuration qui sort les messages de journal dans la console
handler = logging.FileHandler("demo.log")
# Configurer cet objet pour utiliser notre format
handler.setFormatter(formatter)
# Et accessoirement, changer le niveau minimal de sévérité
handler.setLevel(logging.INFO)
# Assigner notre configuration à notre logger
# On doit faire tout ça parce qu'il n'y a pas de méthode
# pour facilement définir une chaîne de formatage pour un logger
logger.addHandler(handler)
logger.warning("Message d'avertissement")
if __name__ == "__main__":
# Par défaut, Python n'affiche des messages de journalisation
# que s'ils excèdent une certaine sévérité.
# Dans la plupart des langages, par défaut, c'est la sévérité
# WARNING (en-dessous, on n'indique généralement pas de problème)
# qui est la plus basse prise en compte
logging_with_formatting()