Sobre el proyecto
Este es un constructo CDK serverless para análisis web que despliega una solución full-stack en AWS. Crea un panel frontal, APIs backend y tuberías de ingestión para rastrear el tráfico del sitio web y las interacciones de los usuarios. Está diseñado para sitios de tráfico bajo a moderado (hasta 10M de vistas de página), enfatizando costos mínimos, privacidad (sin PII almacenada) y facilidad de despliegue.
Las características incluyen seguimiento de vistas de página con tiempo en la página, seguimiento de eventos, detección de anomalías con alertas, soporte para dominios personalizados y tres opciones de autenticación (ninguna, autenticación básica, AWS Cognito). Rastrea referrers, geolocalización por país/ciudad, tipo de dispositivo, parámetros UTM y parámetros de consulta. La detección de bots está integrada. La integración está disponible mediante un fragmento de JavaScript independiente o un SDK para usar en cualquier framework frontend.
La arquitectura consiste en un frontend Vue 3 alojado en S3/CloudFront, un backend TypeScript que usa Lambda Function URLs y tRPC, y una API de ingestión que amortigua eventos a través de Kinesis Firehose hacia archivos Parquet particionados en S3. Los datos se consultan a través de Athena. Los datos de ubicación se derivan de MaxMind GeoLite2 sin almacenar IPs.
El despliegue requiere `aws-cdk` y `aws-cdk-lib` > 2.79.1. Después de instalar el paquete npm, los usuarios definen el constructo en su stack CDK con configuración para sitios, orígenes, autenticación, dominio, observabilidad y detección de anomalías. La configuración del lado del cliente implica agregar una etiqueta de script o inicializar el SDK en la aplicación.
Se proporcionan estimaciones de costos para varios niveles de tráfico, con proyecciones en el peor caso significativamente más altas que los costos reales debido a los procesos diarios de vaciado de datos. Las actualizaciones desde v0 a v1 implican cambios importantes relacionados con particiones e IDs de registros DNS.
La documentación incluye decisiones de diseño, directrices de contribución y desgloses detallados de costos. Hay una demo en vivo disponible.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.