方法一,直接使用loggin 模块
import logging from flask import Flask from flask_cors import CORS from flask_sqlalchemy import SQLAlchemy import config # 创建db db = SQLAlchemy() # 设置 logger = logging.getLogger('gunicorn.info') handler = logging.FileHandler('test.log', encoding='UTF-8') # 设置日志字符集和存储路径名字 logging_format = logging.Formatter( # 设置日志格式 '%(asctime)s - %(levelname)s - %(filename)s - %(funcName)s - %(lineno)s - %(message)s') handler.setFormatter(logging_format) # 绑定格式 logger.addHandler(handler) logger.setLevel(logging.ERROR) def create_app(): app = Flask(__name__) app.config.from_object(config) CORS(app, resources=r'/*') db.init_app(app) from . import myRoutes myRoutes.register(app) return app APP = create_app()
使用
from app.model.user import Users from app.utils.errcode import ReturnValue from app import dash def index(): dash.logger.error('info log') users = Users.query.filter().first() return ReturnValue.set_value(success=False, status="no_login", data=users.username)
文件内容:
方法二, 结合flask 的logger
import logging from flask import Flask from flask_cors import CORS from flask_sqlalchemy import SQLAlchemy import config # 创建db db = SQLAlchemy() def create_app(): app = Flask(__name__) app.config.from_object(config) CORS(app, resources=r'/*') db.init_app(app) # handler = logging.FileHandler('flask.log') handler = logging.FileHandler('flask.log', encoding='UTF-8') # 设置日志字符集和存储路径名字 logging_format = logging.Formatter( # 设置日志格式 '%(asctime)s - %(levelname)s - %(filename)s - %(funcName)s - %(lineno)s - %(message)s') handler.setFormatter(logging_format) app.logger.addHandler(handler) from . import myRoutes myRoutes.register(app) return app APP = create_app()
使用:
from app.model.user import Users from app.utils.errcode import ReturnValue from app import dash def index(): dash.APP.error('info log') users = Users.query.filter().first() return ReturnValue.set_value(success=False, status="no_login", data=users.username)