在Python中使用日志记录如何实现将日志日志写入文件中

  介绍

本篇文章为大家展示了在Python中使用日志记录如何实现将日志日志写入文件中,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

日志是跟踪软件运行时所发生的事件的一种方法。软件开发者在代码中调用日志函数,表明发生了特定的事件。事件由描述性消息描述,该描述性消息可以可选地包含可变数据(即,对于事件的每次出现都潜在地不同的数据)。事件还具有开发者归因于事件的重要性;重要性也可以称为级别或严重性。

日志提供了一组便利的函数,用来做简单的日志。它们是调试(),(),信息警告()错误()()和关键。

日志函数根据它们用来跟踪的事件的级别或严重程度来命名。标准级别及其适用性描述如下(以严重程度递增排序):

级别何时使用调试详细信息,一般只在调试问题时使用info证明事情按预期工作.WARNING某些没有预料到的事件的提示,或者在将来可能会出现的问题提示。例如:磁盘空间不足。但是软件还是会照常运行. error由于更严重的问题,软件已不能执行一些功能了.CRITICAL严重错误,表明软件已不能继续运行了。级别数字值CRITICAL50ERROR40WARNING30INFO20DEBUG10NOTSET0
  ,,,
  ,,,

默认等级是警告,这意味着仅仅这个等级及以上的才会反馈信息,除非日志模块被用来做其它事情。

被跟踪的事件能以不同的方式被处理。最简单的处理方法就是把它们在控制台上打印出来。另一种常见的方法就是写入磁盘文件。

进口记录
  logging.debug(& # 39;调试信息& # 39;)
  logging.warning(& # 39;只有这个会输出……& # 39;)
  logging.info(& # 39;信息信息& # 39;)

由于默认设置的等级是警告,所有只有警告的信息会输出到控制台。

警告:根:只有这个会输出……,

利用logging.basicConfig()打印信息到控制台

进口记录
  logging.basicConfig(格式=& # 39;% (asctime) s - %(路径)[线:% (lineno) d] - % (levelname): % & # 39;(消息),
  水平=logging.DEBUG)
  logging.debug(& # 39;调试信息& # 39;)
  logging.info(& # 39;信息信息& # 39;)
  logging.warning(& # 39;警告信息& # 39;)
  logging.error(& # 39;错误信息& # 39;)
  logging.critical(& # 39;重要信息& # 39;)

由于在logging.basicConfig()中的水平的值设置为日志记录。调试,所有调试信息、警告、错误,关键的日志都会打印到控制台。

日志级别:调试& lt;信息& lt;警告& lt;错误& lt;关键
logging.debug(& # 39;调试级别,最低级别,一般开发人员用来打印一些调试信息& # 39;)
logging.info(& # 39;信息级别,正常输出信息,一般用来打印一些正常的操作& # 39;)
logging.warning(& # 39;华林级别,一般用来打印警信息& # 39;)
logging.error(& # 39;错误级别,一般用来打印一些错误信息& # 39;)
logging.critical(& # 39;关键级别,一般用来打印一些致命的错误信息,等级最高& # 39;)

所以如果设置水平=logging.info()的话,调试的信息则不会输出到控制台。

logging.basicConfig(水平=logging.debug #控制台打印的日志级别   文件名=& # 39;new.log& # 39;   filemode=& # 39;一个# 39;,# #模式,有w和,w就是写模式,每次都会重新写日志,覆盖之前的日志   #一个是追加模式,默认如果不写的话,就是追加模式   格式=& # 39;% (asctime) s - %(路径)[线:% (lineno) d] - % (levelname): %(消息)& # 39;   #日志格式   )

如果在logging.basicConfig()设置文件名和filemode,则只会保存日志到文件,不会输出到控制台。

日志库采取了模块化的设计,提供了许多组件:记录器,处理器,过滤器和格式化器。

    <李>记录器暴露了应用程序代码能直接使用的接口。 <李>处理程序将(记录器产生的)日志记录发送至合适的目的地。 <李>滤波器提供了更好的粒度控制,它可以决定输出哪些日志记录。 <李>格式化程序指明了最终输出中日志记录的布局。
      李,

伐木工:

记录器对象要做三件事情。首先,它们向应用代码暴露了许多方法,这样应用可以在运行时记录消息。其次,记录器对象通过严重程度(默认的过滤设施)或者过滤器对象来决定哪些日志消息需要记录下来。第三,记录器对象将相关的日志消息传递给所有感兴趣的日志处理器。

常用的记录器对象的方法分为两类:配置和发送消息。

在Python中使用日志记录如何实现将日志日志写入文件中