从命令行为SQLAlchemy / Pyramid启用SQL语句

时间:2016-01-29 19:09:06

标签: python sqlalchemy pyramid

我在SQLAlchemy中使用Pyramid,我在development.ini中有以下部分:

[logger_sqlalchemy]
# level = INFO
level = WARN
handlers =
qualname = sqlalchemy.engine

每当我想启用SQL语句/ echo时,我都会编辑该文件并更改注释,使其变为level = INFO

我的问题是如何在命令行中执行此操作,而无需在文本编辑器中编辑文件。

其他Web框架内置了对此的支持,但我无法找到Pyramid / SQLAlchemy的解决方案。

我想支持pservepshellalembic

1 个答案:

答案 0 :(得分:3)

如果您正在使用pyramid_sqlalchemy,那么您可以在running tests时使用--sql-echo选项。

否则,您将自己解析参数并设置日志记录级别:

import logging
logging.getLogger('sqlalchemy.engine').setLevel('INFO')

对于pservepshell,您可能必须在应用程序初始化代码中的某处读取命令行参数。

对于alembic,您需要修改env.py