Pular para conteúdo

Template: Job

Objetivo

Padronizar a documentação de uma tarefa assíncrona (@shared_task do Celery).


Estrutura

# Job: `<nome_da_task>`

**Local:** `apps/<modulo>/tasks.py`
**Tipo:** Sob demanda (enfileirada por uma ação) | Periódica (Celery Beat)

## Disparo

- Sob demanda: o que enfileira a task (view, signal, outro service).
- Periódica: expressão do Beat (`crontab(...)`) real.

## Parâmetros

| Parâmetro | Tipo | Descrição |
|---|---|---|
| ... | ... | ... |

## O que faz

Passo a passo real da task.

## Idempotência

A task pode rodar mais de uma vez com o mesmo efeito? Se não, qual o risco.

## Retentativas

Configuração real de `retry`/`max_retries`, se houver.

## Falhas

Onde o erro aparece (log do sistema, Flower) e o que fazer se falhar.

Regra de preenchimento

Confirmar a task real em tasks.py e, se periódica, a entrada correspondente no Celery Beat (CELERY_BEAT_SCHEDULE ou equivalente) — não presumir agendamento.


Referências