导入包
import logging.handlers
import datetime
logger = logging.getLogger("log")
日志目录查找并创建
if os.path.isdir('log'):
print("当前目录下存在 log 文件夹")
# pass
else:
print("当前目录下不存在 log 文件夹,调用 mkdir 创建该文件夹")
os.mkdir('log')
设置log的一些参数,如下所示:
try:
handler1 = logging.handlers.RotatingFileHandler(
filename='log/log-'+datetime.datetime.now().strftime("%Y-%m-%d %H-%M-%S"),
maxBytes=10 * 1024 * 1024, backupCount=20, encoding='utf-8')
logger.setLevel(logging.DEBUG)
handler1.setLevel(logging.DEBUG)
formatter = logging.Formatter("%(asctime)s %(name)s %(levelname)s %(message)s")
handler1.setFormatter(formatter)
logger.addHandler(handler1)
except:
print("log 初始化设置错误!")
# 说明:ilename为log文件名称,maxBytes为最大分割存储字节数(每个文件不超过maxBytes),backupCount为单次运行程序最大log文件数,每个文件最大maxBytes字节时。超过时,覆盖最早的。
# 也能按照时间分割。例如按照每隔1个小时,保存一个日志文件,备份文件为最多3个,示例如下
handler2 = logging.handlers.TimedRotatingFileHandler("test.txt", when="H", interval=1, backupCount=3)