2013-03-05 64 views
0

我正在寻找在我的代码中添加一些assert语句,并希望能够将参数传递给uwsgi,以便能够关闭评估生产中的这些语句。我似乎无法弄清楚optimize option in uwsgi如何映射到-O command line value for python。 uWSGI的选项需要一个整数,但没有说明它如何解释或使用该整数,而不是说“设置python优化级别”。然而,python文档从来没有提及整数,除了与环境变量有关,并且只有一个整数相当于多个参数(我看不出任何这样做的任何描述,尽管我怀疑它可能会做类似-OOuWSGI优化选项

那么,我应该如何设置optimize值来简单地关闭断言语句,以及如果我也想删除文档语句,应该设置什么?并将其设置为0(零)默认值?

回答

2

我测试了它,将其设置为零并且调试仍然打开,但将其设置为大于零的任何数字都会关闭调试。

我的代码看起来像这样

def application(env, start_response): 
    start_response('200 OK', [('Content-Type','text/html')]) 
    assert(not __debug__) 
    return "Hello World" 

而且我的电话看起来像这样

uwsgi --http 0.0.0.0:8000 --wsgi-file app.py -O 1 

编辑 我还添加了文档字符串的功能,这对应用程序的结束。 py文件

print "DOC STRING: %s" % application.__doc__ 

并用-O设置为1和2,用1测试,我得到一个文档字符串,任何大于1的值我都没有。