周期性任务扭曲异常

时间:2011-12-22 18:42:59

标签: django twisted

我有一个在扭曲下运行的django应用程序。 我的server.py包含以下代码:http://slexy.org/view/s21TBxGPut 当我使用twisted运行server.py时,我得到以下异常:http://slexy.org/view/s2WqQDMvsh

异常是由server.py中的最后两行引起的。如果我评论这些行,我也不例外。 我不知道如何调试这样的事情。 也许有人知道我做错了什么?

非常感谢Arshavski Alexander。

1 个答案:

答案 0 :(得分:2)

您的TimerService构造错误:

ts2 = TimerService(3600, call_command("tamarin_pull_logs"))

这与:

相同
some_func = call_command("tamarin_pull_logs")
ts2 = TimerService(3600, some_func)

call_command返回什么?它不是您的粘贴的一部分,但因为您的例外是:

exceptions.TypeError: 'NoneType' object is not callable

我猜它会返回None。并且None不可调用,正如异常所指出的那样。

您正确设置了第一个TimerService

ts = TimerService(86400, check_all_notifications)

请注意,您没有在该声明中调用check_all_notifications。您传递给TimerService。您需要为其他服务执行相同的操作:

ts2 = TimerService(3600, call_command, "tamarin_pull_logs")

恰好,TimerService被构造为支持使用某些参数调用函数,因此它接受可调用和任意的额外参数,并在调用它时将这些参数传递给callable。