logging.basicConfig()

logging.basicConfig() 是 Python 标准库 logging 模块中的一个函数,用于配置日志记录器(logger)的基本选项。这个函数允许你在不创建和配置多个 logger、handler 和 formatter 的情况下,快速地为你的应用程序设置日志记录。

以下是一些 basicConfig() 的常见参数:

  • filename: 指定日志应写入哪个文件。如果指定了这个参数,日志将被写入文件,而不是打印到控制台。
  • filemode: 如果指定了 filename,则此参数定义文件打开模式(例如 'w' 表示写入模式,'a' 表示追加模式)。默认为 'a'。
  • format: 定义日志消息的格式。默认为 '%(levelname)s:%(message)s'
  • datefmt: 定义日期/时间的格式。默认情况下,日期/时间不会包含在日志消息中。
  • level: 设置日志的级别。例如,logging.DEBUG 会记录所有级别的日志(包括 DEBUG、INFO、WARNING、ERROR 和 CRITICAL),而 logging.WARNING 只记录 WARNING 及以上级别的日志。默认为 logging.WARNING
  • stream: 指定日志应写入哪个流对象(例如,一个文件对象或 sys.stderr)。如果指定了这个参数,则不会使用 filename 参数。
  • handlers: 如果已经创建了处理程序(handler),则可以将它们作为此参数的列表传递。

下面是一个使用 logging.basicConfig() 的简单示例:

import logging

logging.basicConfig(
    level=logging.DEBUG,  # 设置日志级别
    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',  # 设置日志格式
    datefmt='%Y-%m-%d %H:%M:%S',  # 设置日期时间格式
    filename='app.log',  # 指定日志文件名为 'app.log'
    filemode='w'  # 写入模式,'w' 表示每次运行程序时覆盖日志文件,'a' 表示追加到日志文件
)

logger = logging.getLogger(__name__)

logger.debug('这是一个调试消息')
logger.info('这是一个信息消息')
logger.warning('这是一个警告消息')
logger.error('这是一个错误消息')
logger.critical('这是一个严重消息')

在这个示例中:

  • level=logging.DEBUG:设置日志级别为 DEBUG,这意味着所有 DEBUG 级别或更高级别的消息都会被记录。
  • format='%(asctime)s - %(name)s - %(levelname)s - %(message)s':指定日志消息的格式。
  • datefmt='%Y-%m-%d %H:%M:%S':指定日志消息中的日期时间格式。
  • filename='app.log':指定日志消息应该写入名为 app.log 的文件。
  • filemode='w':指定每次运行程序时覆盖日志文件。使用 'a' 可以将日志追加到文件中。

通过这种方式配置日志记录系统,可以轻松地控制日志消息在整个应用程序中的处理方式。

posted @ 2024-06-01 14:32  JJJhr  阅读(109)  评论(0编辑  收藏  举报