log日志快速搭建

在python中常使用logging日志模块进行程序的过程记录,以下是log日志的快速搭建教程

日志配置

logging.basicConfig(filename="log_name.log", level=logging.DEBUG, filemode="w",  
format="%(asctime)s>%(levelname)s>%(message)s", datefmt="%Y-%m-%d %H:%M:%S")

这段代码中:

logging.basicConfig: 这是一个函数,用于配置日志系统的基本设置。

filename="log_name.log": 指定日志文件的名称,这里设置为"log_name.log"。所有记录的日志信息将会被写入这个文件。

level=logging.DEBUG: 设置日志记录的级别为DEBUG。日志级别有CRITICAL、ERROR、WARNING、INFO、DEBUG等,其中DEBUG是最低级别,意味着所有级别的日志都会记录。如果改为logging.WARNING,则只会在日志中出现logging.WARNING以及比它级别更高的CRITICAL、ERROR级别消息

filemode="w": 指定文件打开模式,"w"代表写入模式。如果文件已存在,将覆盖原有内容;如果不存在,会创建新文件。

format="%(asctime)s>%(levelname)s>%(message)s": 设置日志输出的格式。其中:

  • %(asctime)s: 表示日志记录的时间戳。

  • %(levelname)s: 表示日志记录的级别,如ERROR、INFO、DEBUG等。

  • %(message)s: 表示日志记录的具体信息。

datefmt="%Y-%m-%d %H:%M:%S": 设置时间戳的格式,这里指定为"年-月-日 时:分:秒"。

这样就完成了log文件的基本配置,上面的配置可以满足一般的业务需求。

log消息

  • DEBUG: 用于记录开发过程中的详细信息,通常用于诊断问题。
  • INFO: 用于记录程序运行的一般信息,比如程序的启动、配置信息等。
  • WARNING: 表示有潜在问题的情况,比如程序使用了不推荐的方法或者某些操作可能不会产生预期的结果。
  • ERROR: 表示程序运行中的错误,这些错误可能会影响程序的功能,但程序仍能继续运行。
  • CRITICAL: 表示严重的错误,通常会导致程序的运行失败或者核心功能无法使用。
    示例:
  1. DEBUG 级别:
logging.debug("This is a debug message: the program is running smoothly.")

这条日志消息表示程序运行中的细节信息,通常用于开发和测试阶段,以便于开发者了解程序的内部运行状态。

  1. INFO 级别:
logging.info("The program has started successfully.")

这条消息通常用来记录程序的启动信息,或者程序运行过程中的一些常规状态更新。

  1. WARNING 级别:
logging.warning("This operation is deprecated and will be removed in future versions.")

警告级别的日志用来指出程序运行中出现的一些不严重的错误,或者提示某些操作可能会有潜在的问题。

  1. ERROR 级别:
logging.error("Failed to connect to the database.")

错误级别的日志表示程序运行中的错误,这些错误可能会影响程序的功能,但通常不会导致程序完全停止运行。

  1. CRITICAL 级别:
logging.critical("Out of memory. Shutting down to prevent data corruption.")

严重错误的日志表示程序遇到了重大问题,足以影响程序的核心功能,可能需要立即采取措施,比如关闭程序以防止数据损坏。

log用法

在python代码中,常常使用try代码块结合log消息
例如:

import logging
# 在使用logging之前进行配置
logging.basicConfig(filename="log_name.log", level=logging.DEBUG, filemode="w",  
format="%(asctime)s>%(levelname)s>%(message)s", datefmt="%Y-%m-%d %H:%M:%S")

try:  
    import scipy  
except Exception as e:  
    logging.error(f"import scipy报错:{str(e)}")

这样在运行一些代码块时,如果出现一些意想不到的错误,那么也可以记录在日志中,便于后期排查。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值