import logging
from logging.handlers import RotatingFileHandler


def setup_log(func):
    """配置日志"""

    # 设置日志的记录等级(# FATAL/CRITICAL = 重大的,危险的(50)
	# WARNING = 警告(40)
	# ERROR = 错误(30)
	# INFO = 信息(20)
	# DEBUG = 调试(10)
    logging.basicConfig(level=30)  
    # 创建日志记录器,指明日志保存的路径、每个日志文件的最大大小、保存的日志文件个数上限
    file_log_handler = RotatingFileHandler("logs/log", maxBytes=1024 * 1024 * 100, backupCount=10) #1 KB = 1024 bytes
    # 创建日志记录的格式 日志等级 输入日志信息的文件名 行数 日志信息
    formatter = logging.Formatter('%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s')
    # 为刚创建的日志记录器设置日志记录格式
    file_log_handler.setFormatter(formatter)
    # 为全局的日志工具对象(flask app使用的)添加日志记录器
    logging.getLogger().addHandler(file_log_handler)
    def wrapper(*args,**kwargs):
        func(*args,**kwargs)
    return wrapper

@setup_log
def demo():
    logging.info("good")
    try:
        sum =[i for i in range(10)]
        res = sum/2
    except Exception as e:
        # logging.basicConfig(level=30)
        logging.error(e)
demo()
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐