问题描述
如果发生HardTimeLimit,是否可以获取任务信息? 同样在以下情况下
@app.task(soft_time_limit=9,max_retries=0,time_limit=10)
def task():
try:
do_something()
except SoftTimeLimit:
return
是否可能引发TimeLimitExceeded?如果是,我该怎么抓?
解决方法
是的,默认时间为300秒是可能的。
要捕获,可以使用以下方法:
except TimeLimitExceeded:
return
如果要增加默认时间,则可以修改celery (/etc/init.d/celeryd)
设置。下面的示例将时间限制设置为1小时。
CELERYD_OPTS="--time-limit=3600 -E --loglevel=DEBUG"