Documentação do Django Celery Logs

Django Celery Logs é um app Django reutilizável para projetos que querem observabilidade de tasks Celery sem manter o result backend do Celery ativado. Ele registra sucessos e falhas por meio de signals do Celery, armazena dados JSON estruturados e expõe logs, tracebacks, reexecução de tasks e estatísticas no Django admin.

Funcionalidades

  • Registra automaticamente execuções Celery com sucesso e falha.

  • Armazena task id, nome da task, nome da task periódica, fila, worker, args, kwargs, resultado JSON, mensagem de erro, traceback, timestamp e duração.

  • Captura tracebacks estruturados de falha com contexto por frame e variáveis locais sanitizadas.

  • Adiciona páginas no Django admin para inspeção de logs, preview de JSON, reexecução de task e paginação configurável.

  • Adiciona auto-refresh na listagem de logs de tasks com intervalos de 5, 10, 30 e 60 segundos.

  • Adiciona um dashboard administrativo de estatísticas com totais, taxa de sucesso, durações, throughput, filas, workers, tasks periódicas, tasks lentas e erros comuns.

  • Inclui clear_celery_task_logs para remover registros antigos.

  • Inclui acquire_lock_or_fail para evitar execução duplicada usando lock em cache.

Listagem de tasks

A listagem de logs mostra metadados da task e um preview do resultado diretamente na tabela, permitindo analisar execuções recentes sem abrir o detalhe de cada task. Ela também inclui controles de auto-refresh e filtros retráteis, mantendo mais espaço de tela disponível para a lista durante o monitoramento operacional.

Listagem de tasks do Django Celery Logs com preview do resultado

Stacktrace interativo

O detalhe de uma task com falha inclui o stacktrace completo e as variáveis de contexto sanitizadas capturadas no momento do erro, acelerando o debug em produção.

Stacktrace interativo do Django Celery Logs com variáveis de contexto

Dashboard de estatísticas

O admin de estatísticas oferece uma visão operacional rápida do throughput do Celery, falhas, filas, workers, tasks lentas, tasks periódicas e erros comuns.

Dashboard de estatísticas do Django Celery Logs

Início rápido

Guia de uso

Desenvolvimento

Outros