码迷,mamicode.com
首页 > 其他好文 > 详细

flask 添加日志

时间:2016-08-10 11:01:01      阅读:524      评论:0      收藏:0      [点我收藏+]

标签:

def add_error_handler(app):
    for exception in default_exceptions:
        app.register_error_handler(exception, error_handler)
    app.register_error_handler(Exception, error_handler)

def error_handler(error):
    description = error.get_description(request.environ)         if hasattr(error, get_description) else None

    exc_type, exc_value, exc_traceback = sys.exc_info()
    traceback.print_exception(exc_type, exc_value, exc_traceback)

    current_app.logger.error(
        """
        Request:        {method} {path}
        IP:             {ip}
        User:           {user}
        Agent:          {agent_platform} | {agent_browser} {agent_browser_version}
        Raw Agent:      {agent}
        Description:    {description}
        """.format(
            method=request.method,
            path=request.path,
            ip=request.remote_addr,
            agent_platform=request.user_agent.platform,
            agent_browser=request.user_agent.browser,
            agent_browser_version=request.user_agent.version,
            agent=request.user_agent.string,
            user=g.user if hasattr(g, user) else None,
            description=description,
        ), exc_info=exc_traceback
    )

    if isinstance(error, HTTPException):
        code = error.code
        if code == 404:
            return make_response(jsonify({code: 404, data: {}, msg: page not found}), code)
        else:
            """其他HTTP异常处理暂未定义"""
            pass
    else:
        current_app.logger.error(Internal Server Error)
        return make_response(jsonify({code: 500, data: {}, msg: Internal Server Error}))
app = Flask(__name__)
add_error_handler(app)

  

flask 添加日志

标签:

原文地址:http://www.cnblogs.com/ymy124/p/5755861.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!