Я пытаюсь вычислить хеш для каждой задачи в потоке воздуха, используя комбинацию dag_id, task_id и execute_date. Я делаю вычисления в init пользовательского оператора, чтобы я мог использовать его для вычисления уникального retry_delay для каждой задачи (я не хочу использовать экспоненциальный откат)
Мне трудно использовать макрос {{execute_date}} внутри вызова хэш-функции или функции int, в этих случаях поток воздуха не заменяет его на конкретную дату (просто сохраняет строку {{execute_date}}, и я получаю то же самое относится ко всем датам исполнения
self.task_hash = int(hashlib.sha1("{}#{}#{}".format(self.dag_id,
self.task_id,
'{{execution_date}}')
.encode('utf-8')).hexdigest(), 16)
Я поместил task_hash в template_fields, также я попытался выполнить вычисление в пользовательском макросе - это работает для хеш-части, но когда я помещаю его в int (), это та же проблема
Любое рабочее место, или, возможно, я мог бы получить дату выполнения (при инициализации оператора), а не из макросов?
спасибо