1.日志
对于程序来说非常重要,不能轻易删的东西,即使四五年都用不上,也要好好保存。
1.日志级别
import logging
logging.basicConfig(
# 1.日志的输出位置:1.终端 2.文件
# filename='access.log',#不指定,默认打印到终端
# 2.日志格式:
format='%(asctime)s-%(name)s-%(levelname)s-%(module)s:%(message)s',
# 3.时间格式:
datefmt='%Y-%m-%d %H:%M:%S %p',
# 4.日志级别
level=30
)
logging.debug('调试debug') # 10
logging.info('消息info') # 20
logging.warning('警告warning') # 30
logging.error('错误error') # 40
logging.critical('严重错误critical') # 50
# 2021-07-18 15:31:45 PM-root-WARNING-logging模块:警告warning
# 2021-07-18 15:31:45 PM-root-ERROR-logging模块:错误error
# 2021-07-18 15:31:45 PM-root-CRITICAL-logging模块:严重错误critical
2.日志字典的使用
格式是比较通用的,任何项目的日志配置都可以按照这种规则进行配置
"""
日志配置字典LOGGING_DIC
"""
# 1、定义三种日志输出格式,日志中可能用到的格式化串如下
# %(name)s Logger的名字
# %(levelno)s 数字形式的日志级别
# %(levelname)s 文本形式的日志级别
# %(pathname)s 调用日志输出函数的模块的完整路径名,可能没有
# %(filename)s 调用日志输出函数的模块的文件名
# %(module)s 调用日志输出函数的模块名
# %(funcName)s 调用日志输出函数的函数名
# %(lineno)d 调用日志输出函数的语句所在的代码行
# %(created)f 当前时间,用UNIX标准的表示时间的浮 点数表示
# %(relativeCreated)d 输出日志信息时的,自Logger创建以 来的毫秒数
# %(asctime)s 字符串形式的当前时间。默认格式是 “2003-07-08 16:49:45,896”。
#逗号后面的是毫秒
# %(thread)d 线程ID。可能没有
# %(threadName)s 线程名。可能没有
# %(process)d 进程ID。可能没有
# %(message)s用户输出的消息
# 2、强调:其中的%(name)s为getlogger时指定的名字
standard_format = '%(asctime)s - %(threadName)s:%(thread)d - 日志名字:%(name)s - %(filename)s:%(lineno)d -' \
'%(levelname)s - %(message)s'
simple_format = '[%(levelname)s][%(asctime)s][%(filename)s:%(lineno)d]%(message)s'
test_format = '%(asctime)s] %(message)s'
# 3、日志配置字典
LOGGING_DIC = {
'version': 1,
'disable_existing_loggers