python日志配置文件_python日志配置

先来一段程序告知python怎样配置日志。

logging.basicConfig(level=logging.DEBUG) # 设置日志级别

# 创建日志记录器,指明日志保存的路径、每个日志文件的最大大小、保存的日志文件个数上限

file_log_handler = RotatingFileHandler("logs/log", maxBytes=1024 * 1024 * 100, backupCount=10)

# 创建日志记录的格式 日志等级 输入日志信息的文件名 行数 日志信息

formatter = logging.Formatter('%(levelname)s %(filename)s:%(lineno)d %(message)s')

# 为刚创建的日志记录器设置日志记录格式

file_log_handler.setFormatter(formatter)

# 为全局的日志工具对象(flask app使用的)添加日志记录器

logging.getLogger().addHandler(file_log_handler)

分析代码:

basicConfig():对日志系统进行一次性配置,以下是可以指定的关键字参数

filename:指定日志输出目标文件的文件名,指定该设置项后日志信心就不会被输出到控制台了

filemode:指定日志文件的打开模式,默认为'a'。需要注意的是,该选项要在filename指定时才有效

format:指定日志格式字符串,即指定日志输出时所包含的字段信息以及它们的顺序。logging模块定义的格式字段下面会列出。

datefmt:指定日期/时间格式。需要注意的是,该选项要在format中包含时间字段%(asctime)s时才有效

level:指定日志器的日志级别

stream:指定日志输出目标stream,如sys.stdout、sys.stderr以及网络stream。需要说明的是,stream和filename不能同时提供,否则会引发 ValueError异常

handlers:Python 3.3中新添加的配置项。该选项如果被指定,它应该是一个创建了多个Handler的可迭代对象,这些handler将会被添加到root logger。需要说明的是:filename、stream和handlers这三个配置项只能有一个存在,不能同时出现2个或3个,否则会引发ValueError异常。

RotatingFileHandler():轮转文件处理器,将日志消息发送到磁盘文件,并支持日志文件按大小切割

FileHandler():将日志消息发送到磁盘文件,默认情况下文件大小会无限增长

StreamHandler():将日志消息发送到输出到Stream,如std.out, std.err或任何file-like对象。

Formatter():格式器,决定日志记录的最终输出格式

%(levelname)s:日志记录的级别

%(message)s:日志记录的内容

%(asctime)s:日志记录的时间

%(pathname)s:调用日志记录文件的全路径

%(filename)s:pathname的文件名部分

%(module)s:pathname的文件名,不包含后缀

%(funcName)s:调用日志记录文件的函数名

getLogger():创建一个Logger对象

addHandler():添加一个处理器

日志级别

以下是由低到高,默认设置等级后不显示低等级的消息

DEBUG

INFO

WARNING

ERROR

CRITICAL(很少使用)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值