• Flask框架的日志配置


    日志配置

    logs/logs.py
    logs/flask.log

    import os
    import logging
    from logging.handlers import RotatingFileHandler
    
    # 获取当前绝对路径
    def get_cwd():
        return os.path.dirname(os.path.abspath(__file__))
    
    def log_config():
        # 设置日志的的登记
        logging.basicConfig(level=logging.DEBUG)
    
        # 日志输出目录
        log_path = os.path.join(get_cwd(),'flask.log')
        # 创建日志记录器,设置日志的保存路径和每个日志的大小和日志的总大小
        file_log_handler = RotatingFileHandler(log_path, encoding='UTF-8', maxBytes=1024*1024*100,backupCount=100)
        # 创建日志记录格式,日志等级,输出日志的文件名 行数 日志信息
        # formatter = logging.Formatter("%(levelname)s %(asctime)s [%(filename)s]: %(lineno)s - %(funcName)s - %(message)s")
        formatter = logging.Formatter("%(levelname)s %(asctime)s [%(filename)s]: %(lineno)s - %(funcName)s - %(message)s")
        # 为日志记录器设置记录格式
        file_log_handler.setFormatter(formatter)
        # 为全局的日志工具对象(flaks app使用的)加载日志记录器
        logging.getLogger().addHandler(file_log_handler)
    

    log使用

    在manager.py中创建app前导入logs.py

    manager.py

    from flask import Flask
    from flask_script import Manager
    from logs.logs import log_config
    import logging
    
    log_config()#创建app前设置日志
    
    app = Flask(__name__)
    # 装载配置
    app.debug = config.DEBUG
    
    manager = Manager(app)
    
    # 设置登录view为user模块的login
    login_manager.login_view = 'user.login'
    login_manager.init_app(app)
    
    # 注册路由
    app.register_blueprint(user, url_prefix='/user')
    
    # 测试log
    logging.debug("测试debug日志")
    logging.info("测试info日志")
    logging.warning("测试warning日志")
    logging.error("测试error日志")
    
    if __name__ == '__main__':
        manager.run()
    

    其他项目中使用

    例如apps/user/views.py

    from flask import Blueprint
    import logging
    
    user = Blueprint('user', __name__)
    
    @user.route('/login')
    def login():
      logging.debug("测试debug日志")
      logging.info("测试info日志")
      logging.warning("测试warning日志")
      logging.error("测试error日志")
    
  • 相关阅读:
    plsql使用技巧(转)
    tomcat启动报错:Address already in use: JVM_Bind(转)
    多行文本超出时显示省略号----jquery.ellipsis.js(转)
    SVN使用教程总结(转)
    Navicat Premium 12.0.18安装与激活(转)
    Java编程思想 阅读笔记 第一章 对象导论
    Examples--Basic initialisation
    spring(最新) jar 包下载
    JUC并发编程笔记
    Java 整数的内存分析
  • 原文地址:https://www.cnblogs.com/mingyue5826/p/15665607.html
Copyright © 2020-2023  润新知