Closed a52290451 closed 1 year ago
Propuestas para componentes externos
AWS X-Ray: AWS X-Ray es un servicio de monitorización y depuración de aplicaciones en la nube de AWS. Proporciona información detallada sobre las llamadas entre los microservicios y te permite visualizar gráficamente las conexiones y el estado de tus APIs.
Grafana: Grafana es una plataforma de observabilidad y visualización que puede integrarse con diferentes fuentes de datos, como AWS CloudWatch o Prometheus. Puedes crear paneles personalizados para visualizar el estado de tus microservicios y sus conexiones.
NetCrunch Network Monitor: NetCrunch es una herramienta de monitorización de redes que también puede ser utilizada para supervisar el estado de tus APIs. Proporciona una visualización de red completa que muestra las conexiones entre tus servicios y te alerta en caso de fallos.
Propuestas para componentes externo
De cuerdo a un análisis riguroso de las diferentes herramientas, dejando de lado a AWS X-Ray, la mejor herramienta de monitoreo de APIs es GRAFANA.
De esta forma, se propone utilizar GRAFANA como herramienta de monitoreo de APIs. Su configuración debe realizarse en un servidor activo 24/7 para tener un monitoreo constante de las APIs. Para acceder a las funcionalidades de monitoreo desde cualquier PC, se requiere que la configuración del dashboard sea incrustada en una Página Web o que quede disponible en una dirección local a través de una red privada (VPN).
La arquitectura propuesta del módulo, adaptando la herramienta GRAFNA es:
Explorando un poco mas a fondo las diferentes alternativas, se concluye que la mejor opción es utilizar el servicio AWS X-Ray que permite rastrear, a través de API REST, el flujo de conexiones y estado de cada API implementada en GO. Para esto se requiere incluir el SDK del servicio en el código fuente de cada API.
De esta forma, indicando cuales son los trazos y segmentos que se quieren monitorear en cada API, es posible observar su estado en tiempo real, la latencia y respuesta obtenida de cada servicio expuesto por API.
La opción GRAFANA se descarta ya que la única forma de utilizarla el complemento de mapa de conexiones es consumiendo X-RAY de AWS, lo cual significa un reproceso de datos innecesario.
Costos AWS X-Ray:
De acuerdo con la tabla de costos del servicio presentada en:
https://aws.amazon.com/es/xray/pricing/
Se calcula que, si en promedio se realizan 60 solicitudes por hora para cada API, teniendo en cuenta APIs en ambiente de prueba y producción, y que hay APIs con menor y mayor cantidad de solicitudes, y hay 237 grupos de registros de APIs en AWS, se presenta el siguiente costo:
Rastreos registrados al mes = 60 solicitudes por hora × 237 APIs × 24 horas × 31 días × 10% = 1'057'968 rastreos Rastreos facturables registrados al mes = 1'057'968 rastreos – 100'000 rastreos en la capa gratuita = 957'968 rastreos Cargos mensuales por rastreos registrados = 957'968 rastreos × 0,000005 USD = 4,78984 USD/mes
Se requiere diseñar la arquitectura necesaria para el módulo de monitoreo y conexiones entre APIs, de acuerdo a las siguientes especificaciones:
Adicionalmente, se requiere realizar la investigación de posibles componentes externos que contengan las funcionalidades mencionadas y que puedan ser incluidos como parte de la arquitectura diseñada.
Especificaciones técnicas
Sub Tareas
Criterios de aceptación
Requerimientos
Dependencias
Definition of Ready - DoR
Definition of Done - DoD - Desarrollo