假设我有以下foo.py
文件:
#import salt
from flask import Flask
app = Flask(__name__)
@app.route('/')
def slash():
return 'foo'
if __name__ == '__main__':
app.run(debug=True)
如果我运行python foo.py
我得到这个输出,一切正常:
现在,如果我取消注释import salt
行并运行python foo.py
,我在终端中什么也得不到,尽管我可以用curl确认我的web应用程序确实在运行。Salt Stack API和Flask之间是否存在冲突,或者我是否发现了一个bug?在
我在virtualenv中使用了flask0.10.1和Salt 2014.7.0和python2.7.6。在
编辑:我发现了这是关于什么的,尽管我仍然不确定解决方案是什么。Salt调用logging.setLoggerClass(SaltLoggingClass)
作为其初始化的一部分,因此SaltLoggingClass
从此被用作我们的日志类,甚至在其他模块中也是如此。在
好吧,我知道这里发生了什么,我也找到了一个解决办法。正如我在上一次编辑中所说的,这是Salt已经报道过的here。解决方法是在导入Salt之前自己初始化日志。像这样:
我不认为这是Salt最好的决定,但我们必须处理我们所得到的!在
相关问题 更多 >
编程相关推荐