Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging 如何在flask视图中使用应用程序日志,它返回无法导入名称日志_Logging_Flask - Fatal编程技术网

Logging 如何在flask视图中使用应用程序日志,它返回无法导入名称日志

Logging 如何在flask视图中使用应用程序日志,它返回无法导入名称日志,logging,flask,Logging,Flask,我想把烧瓶项目变成大型项目结构 所以我找到了如下示例项目 ~/LargeApp |-- run.py |-- config.py |__ /env # Virtual Environment |__ /app # Our Application Module |-- __init__.py |-- /module_one |-- __init__.py |-- views.py

我想把烧瓶项目变成大型项目结构 所以我找到了如下示例项目

 ~/LargeApp
|-- run.py
|-- config.py
|__ /env             # Virtual Environment
|__ /app             # Our Application Module
     |-- __init__.py
     |-- /module_one
         |-- __init__.py
         |-- views.py
         |-- models.py                
     |__ /templates
         |__ /module_one
             |-- hello.html
     |__ /static
     |__ ..
     |__ .
|__ ..
|__ .
我在/app/init.py中编写create_app函数

def create_app():
    app = Flask(__name__)
    app.config.from_object(os.environ['APP_SETTINGS'])

    app.logger = my_get_logger_function() # this function set log level, and add handler to logger and return logger
    db.init_app(app)

    from .module_one.views import mod as module_one_blueprint
    app.register_blueprint(module_one_blueprint)

    return app
我想在my/app/module_one/views.py中使用logger, 以下是my views.py文件

from app import logger
...
@mod.route('/test/', methods=['GET'])
def test():
    logger.info('test')
但当我运行时,收到消息“ImportError:cannotimportname”logger

我知道这是因为我在创建应用程序之前调用了views.py中的logger


但是我真的不知道如何修复它以及如何设计我的项目

真的错误是因为您没有在模块
应用程序中定义名称
记录器
。如果你想使用应用程序记录器,你应该从
flask
导入
当前的应用程序,它是你的应用程序的实例,如下所示:

from flask import current_app
然后,在您看来,您可以使用记录器:

current_app.logger.info('Your message')

尝试以下操作:
从flask.logging导入日志记录

我也有这个问题,我不知道为什么,但我试过了,效果很好。

谢谢!!!我想我真是个白痴。我发现这是另一页。但我尝试“从应用程序导入当前应用程序”。。。我不知道为什么我没有找到烧瓶。。。