我想配置使用dictConfig和配置SQLAlchemy的記錄,我的燒瓶應用等與蟒蛇燒瓶日誌記錄問題
我有一個YAML文件,如下
version: 1
root:
handlers: [console]
level: INFO
loggers:
sqlalchemy.engine:
level: WARN
propagate: false
handlers: []
clportal:
level: INFO
handlers: [console]
propagate: false
handlers:
console:
class: logging.StreamHandler
formatter: standard
level: INFO
stream: ext://sys.stdout
formatters:
standard:
format: '%(asctime)s %(levelname)-8s %(name)-10s: %(message)s'
其中我日誌通過執行以下內容:
def create_app():
app = Flask('clportal')
configure_logging()
app.logger.info('from app.logger')
app.config.from_pyfile('config.py')
app.secret_key = app.config["SECRET_KEY"]
finjector = FlaskInjector(app=app, modules=[ConfigurationModule(app)])
app.injector = finjector
#app.logger.setLevel(app.config['LOG_LEVEL'])
# add stdout handler (used for docker etc)
#stdout_handler = logging.StreamHandler(sys.stdout)
# stdout_handler.setFormatter(logging.Formatter('%(message)s'))
#app.logger.addHandler(stdout_handler)
#app.logger.info('Set up correctly now?')
return app
def configure_logging():
logging.config.dictConfig(yaml.load(open(os.path.join(APP_PATH, 'logconfig.yml'), 'r')))
通過app.logger.info進行記錄只有在註釋掉create_app函數中的這些行時纔有效。
我很想能夠通過yaml文件配置我所有的日誌記錄。任何想法,爲什麼這不工作?
感謝@sraw我已經正確設置了名,但仍然沒有骰子。添加了上面的截圖,以查看實際存在的內容。似乎被以某種方式覆蓋? – Cameron
@Cameron所以我認爲你已經解決了這個問題?你介意接受我的回答嗎? – Sraw