python 14篇 写日志

import sys
from loguru import logger

# 日志级别: debug 调试信息打印日志比较详细,级别最低
# info 正常的提示信息,级别较低
# waring 警告信息,不影响代码往下运行,级别较高
# error  出错了,级别最高

# exception  比如:程序出异常了 sql 执行出错,也是用的error

def my_log():
    logger.remove()  # 清除它的默认设置
    fmt = '[{time}][{level}][{file.path}:{line}:function_name:{function}]  || msg={message}'
    # level file function module 格式中的几个参数
    logger.add(sys.stdout, level='INFO', format=fmt)  # 设置日志级别并在控制台打印出来,是打印此级别以上的要打印
    logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='20 kb')  # 写在日志文件中,
    # enqueue=True,异步写日志
    # 队列
    # 消息队列
    # rotation可以设置大小,超过多大就产生一个新文件
    # rotation可以设置多长时间,超过多久就产生一个新文件 1 day 1 hour
    # rotation可以设置几点就产生一个新文件 , 00:00 1:00
    # retention= 7 days 多长时间后删除以前产生的日志,当前的日志不受影响
    logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='20 kb')  # 文件超过多大就新生成一个新文件
    logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='01:00')  # 每天1点创建新文件
    logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='2 week')  #文件超过2周就清理掉
    logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, retention='7 days')
    logger.debug('程序开始运行了')
    logger.debug('开始连接mysql')
    logger.info('mysql 配置xxxxx')
    logger.warning('警告,磁盘空间即将不足')
    logger.error('代码出错了')
    # logger.exception('sql执行出错了')

my_log()
原文地址:https://www.cnblogs.com/lhy-qingqiu/p/13789406.html