任务请求:Task Request
app.Task.request 包含与当前执行任务相关的信息和状态。
该请求定义了以下属性:
属性名称
说明
id
执行任务的唯一ID
group
任务组的唯一ID(该任务是组成员的情况下)
chord
此任务所属的和弦的惟一id(如果该任务是标题的一部分)
correlation_id
用于重复数据删除的自定义ID
args
选项参数
kwargs
关键字参数
origin
发送任务的主机名
retries
任务重试次数,默认是从 0 开始的
is_eager
如果任务是由客户端执行,并非职程(Worker)执行,设置 True
eta
任务预计时间(如果已经设置的情况下),时间为 UTC 格式(取决于 enable_utc 设置)
expires
任务执行到期时间(如果已经设置的情况下),默认为 UTC 格式(取决于 enable_utc 设置)
hostname
执行任务的职程(Worker)实例的节点名
delivery_info
添加附加传递消息,主要用于包含交付任务的交换和路由键的映射,retry() 主要用于重新讲任务下发到队列中,该 dict 中的键可用取决于使用的消息中间人(Broker)。
reply-to
回复的发送的队列名称(例如,与 RPC 结果后端一起使用)
called_directly
如果职程(Worker)未执行任务,则此标志设置为true
timelimit
当前(软、硬)时间限制的元组(如果有的话)
callbacks
如果此任务成功返回,将调用的签名列表
errback
如果此任务失败,将调用的签名列表
utc
设置为 true ,启用 UTC

案例

访问上下文访问信息的一个任务案例:
1
@app.task(bind=True)
2
def dump_context(self, x, y):
3
print('Executing task id {0.id}, args: {0.args!r} kwargs: {0.kwargs!r}'.format(
4
self.request))
Copied!
bind 参数表示该函数绑是一个绑定方法,可以通过访问任务类型实例中的属性和方法。
Export as PDF
Copy link
Contents
案例