Maison >développement back-end >Tutoriel Python >Module de journalisation Python démystifié : maîtriser l'art de la journalisation
logging est un puissant outil de logginglogging dans la bibliothèque standard Python. Il fournit un moyen standardisé et configurable de consigner les événements, les erreurs et les informations de débogage des applications. En utilisant le module de journalisation, les développeurs peuvent facilement suivre le comportement des applications, simplifier le dépannage et améliorer la qualité du code.
Le module de journalisation définit plusieurs niveaux de journalisation pour indiquer l'importance des messages :
Le module de journalisation permet de configurer le comportement de journalisation de plusieurs manières :
Enregistreur racine :
import logging # 创建根记录器 root_logger = logging.getLogger() # 设置日志记录级别 root_logger.setLevel(logging.INFO) # 添加控制台处理程序 console_handler = logging.StreamHandler() console_handler.setLevel(logging.DEBUG) console_handler.setFORMatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")) root_logger.addHandler(console_handler) # 添加文件处理程序 file_handler = logging.FileHandler("my_app.log") file_handler.setLevel(logging.WARNING) file_handler.setFormatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")) root_logger.addHandler(file_handler)
Enregistreur personnalisé :
# 创建自定义记录器 my_logger = logging.getLogger("my_app.module1") # 设置日志记录级别 my_logger.setLevel(logging.DEBUG) # 添加流处理程序 stream_handler = logging.StreamHandler() stream_handler.setLevel(logging.INFO) stream_handler.setFormatter(logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")) my_logger.addHandler(stream_handler)
Une fois les paramètres de journalisation configurés, les développeurs peuvent enregistrer les messages en utilisant les méthodes suivantes :
debug()
info()
warning()
error()
critical()
Chaque méthode reçoit un message string et enregistre le message au niveau de journalisation spécifié.
my_logger.info("应用程序已启动")
Le module de journalisation fournit un mécanisme pour filtrer les messages du journal et enregistrer uniquement les messages qui remplissent certaines conditions. Les filtres peuvent être basés sur le niveau de journalisation, le texte du message ou d'autres critères personnalisés.
# 创建一个过滤日志记录级别的过滤器 level_filter = logging.Filter() level_filter.filter = lambda record: record.levelno >= logging.WARNING # 将过滤器添加到记录器 my_logger.addFilter(level_filter)
Le module de journalisation Python est un outil puissant pour enregistrer les événements d'application et les informations de débogage. En comprenant ses fonctionnalités et ses options de configuration, les développeurs peuvent concevoir des applications robustes et maintenables. En fournissant une visualisationcomplète du comportement de l'application, le module de journalisation contribue à améliorer la qualité du code, à simplifier le dépannage et à améliorer le processus de débogage.
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!