Página de status e monitoramento de uptime para apps Django
Monitore views Django, banco, workers Celery e cache. Alertas quando a latência dispara ou workers morrem. Página de status hospedada ou headless via API.
Três formas de lançar uma página de status para Django
Escolha o nível de controle — sem código, low-code ou headless completo.
Hospedado
Adicione seu endpoint Django, aponte um CNAME para status.seudominio.com, pronto. Em 5 minutos.
Headless
Use nossa API pública para construir sua própria UI dentro do app Django. Controle total sobre design e marca.
Ver a APIBadges embutidos
Coloque badges SVG de uptime e status no seu README ou landing page. Atualizam a cada 5 minutos.
Cole este health endpoint no seu app Django
Copie, cole, aponte o PulseAPI para a URL. Retorna 200 saudável, 503 degradado.
from django.db import connection
from django.http import JsonResponse
from django.core.cache import cache
from django.views.decorators.http import require_GET
@require_GET
def health(request):
checks = {}
try:
with connection.cursor() as cur:
cur.execute("SELECT 1")
checks["database"] = "ok"
except Exception:
checks["database"] = "fail"
try:
cache.set("health-probe", "1", 5)
checks["cache"] = "ok" if cache.get("health-probe") == "1" else "fail"
except Exception:
checks["cache"] = "fail"
healthy = all(v == "ok" for v in checks.values())
return JsonResponse(
{"status": "healthy" if healthy else "degraded", **checks},
status=200 if healthy else 503,
)Conecte a view em /health/ no urls.py. Exclua do middleware de autenticação. O PulseAPI parseia o JSON e pode assertar que campos específicos sejam "ok".
O que quebra em apps Django — e como detectar
Migrações meio-aplicadas
Uma migração com falha no deploy deixa a app em estado esquisito. Checar o endpoint /health ao vivo pega isso imediatamente.
Workers Celery silenciosos
Workers podem parar de consumir sem crash. Exponha um health endpoint que enfileira uma tarefa trivial — o PulseAPI alerta quando para de responder.
Exaustão do pool de conexões
Queries longas esgotam o pool e novas requisições dão timeout. Asserções de tempo de resposta revelam isso antes dos usuários notarem.
Não gostou da nossa página de status? Construa a sua em Django.
Nossa API retorna os mesmos dados que nossa UI hospedada consome. Spec OpenAPI completa em api.pulseapi.tech/docs.
import requests
from django.shortcuts import render
def status_view(request):
data = requests.get(
"https://api.pulseapi.tech/status/acme", timeout=5,
).json()
return render(request, "status.html", {"data": data})Monitoramento Django — FAQ
Funciona com Django REST framework, Django Channels ou Django puro?
Com todos. O PulseAPI chama a URL que você der e asserta sobre a resposta. A stack interna não importa.
Como monitoro workers Celery?
Exponha um health endpoint que despacha uma tarefa trivial com .delay() e lê o resultado com timeout curto. Retorne 503 se a tarefa não completou.
Posso usar com staging?
Sim. Crie um endpoint por ambiente e marque com tags. Dá para ocultar os endpoints de staging da página pública mantendo os alertas.
Posso self-hostear a página de status dentro do Django?
Sim — a API headless retorna os mesmos dados da página hospedada. Consuma em uma view, passa pra um template, pronto.
Comece a monitorar seu app Django em 5 minutos
Plano grátis. Sem cartão. Adicione seu endpoint e receba alertas quando quebrar.