Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

cloudflare-gateway-analyzer

Herramienta Python ligera para analizar actividad DNS de Cloudflare Zero Trust (Free Tier) usando GraphQL API oficial. Genera informes diarios con gráficos Mermaid, persistencia histórica en CSV y notificaciones a Discord sin infraestructura propia.

Ficha actualizada 28 sept 2026, 1:44 · upstream 28 sept 2026, 1:10 · release v1.4.0

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es cloudflare-gateway-analyzer

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

cloudflare-gateway-analyzer es una herramienta de observabilidad diseñada específicamente para usuarios del tier gratuito de Cloudflare Zero Trust. Su objetivo principal es permitir la visualización de actividad DNS diaria mediante el uso oficial de la API GraphQL, evitando la necesidad de servidores propios o infraestructura empresarial costosa.

El proyecto implementa una arquitectura de dos repositorios para garantizar la seguridad: la lógica de análisis reside en un repositorio público, mientras que los datos sensibles y los logs históricos se almacenan exclusivamente en un repositorio privado del usuario. Esto protege la privacidad de los registros de navegación personal y cumple con los principios de diseño privacy-first.

La herramienta procesa datos mediante scripts Python (harvester.py, analyzer.py, reporter.py) que extraen información de actividad DNS, generan resúmenes estructurados en CSV y Markdown con gráficos Mermaid, y envían notificaciones automáticas a Discord. Incluye lógica de persistencia para acumular historial más allá del límite de 24 horas de la API gratuita.

CASOS DE USO
  • Monitoreo diario de tráfico DNS para usuarios domésticos o pequeños equipos sin infraestructura dedicada
  • Generación de reportes personalizados para rangos de fechas específicos mediante workflow_dispatch
  • Notificaciones automáticas a Discord sobre actividad bloqueada o tendencias de seguridad
  • Persistencia histórica de logs DNS más allá del límite de 24 horas de la API gratuita
PUNTOS DESTACADOS
  • Uso oficial de la API GraphQL de Cloudflare dentro del alcance permitido por los términos de servicio
  • Arquitectura de dos repositorios que separa lógica pública de almacenamiento privado de datos sensibles
  • Bajo consumo de recursos: ejecución en máquina estándar con ~1GB RAM y 1 core CPU
  • Generación automática de gráficos Mermaid para visualización rápida de tendencias de tráfico
PRECAUCIONES
  • Solo compatible con el tier gratuito de Cloudflare Zero Trust, sin acceso a métricas empresariales avanzadas
  • Dependencia de la disponibilidad y límites de la API GraphQL oficial de Cloudflare
  • No incluye suite de pruebas automatizadas (Pytest) para validación de lógica de análisis
  • Requiere configuración manual de secretos en GitHub Actions para cada despliegue
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU1 vCPUrecomendación inicial
MEMORIA1 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Desplegar en repositorio privado con secrets CLOUDFLARE_API_TOKEN, CLOUDFLARE_ACCOUNT_ID y opcionalmente DISCORD_WEBHOOK_URL. Configurar workflow cron diario (ej. 07:45 JST) que ejecute harvester.py para extraer datos de ~26h y persist_history.py para acumular CSV histórico con retención de 365 días. Mantener referencia al commit SHA del repositorio público para reproducibilidad.

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Python
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
No detectados
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.