Skip to the content.

📊 Etapa 2: Configuración y Exploración de Métricas

⬅️ Anterior: Etapa 1 🏠 Inicio ➡️ Siguiente: Etapa 2.1


🎯 Objetivo

Analizar las métricas expuestas por la aplicación Java y verificar su recolección en Prometheus.


Contexto

La aplicacion que acabas de obtener, es una API REST que permite acortar URLs. Sus principales casos de uso son:

  1. Generar un código corto para una URL original.
  2. Redirigir a la URL original a partir de un código corto.
  3. Listar todas las URLs almacenadas en memoria.

📋 Instrucciones

1️⃣ Generar Actividad en la Aplicación

Antes de observar las métricas, debes generar tráfico hacia la aplicación para producir datos y logs iniciales.

  1. Realiza varias solicitudes a diferentes rutas de la API. Los endpoints disponibles son :

    1. GET /api/
      • Descripción: Devuelve el estado general del servicio.
      • Ejemplo:
         curl http://{App-DNS}/api/
        
    2. POST /api/shorten
      • Descripción: Crea una URL acortada a partir de un JSON con la URL original.
      • Entrada esperada:
         {
         "url": "https://example.com",
         "customCode": "opcional"
         }
        
      • Ejemplo:
         curl -X POST http://{App-DNS}/api/shorten \
         -H "Content-Type: application/json" \
         -d '{"url": "https://google.com"}'
        
    3. GET /api/{shortCode}
      • Descripción: Redirige a la URL original asociada a un código corto.
      • Ejemplo:
         curl -I http://{App-DNS}/api/abc123
        
    4. GET /api/urls
      • Descripción: Retorna todas las URLs almacenadas en memoria.
      • Ejemplo:
        curl http://{App-DNS}/api/urls
        

  1. Espera unos segundos para que las métricas se actualicen en el endpoint de Prometheus

2️⃣ Explorar las Métricas Expuestas por la Aplicación

El microservicio Java expone sus métricas en formato Prometheus a través del endpoint /actuator/prometheus. Estas métricas reflejan distintos aspectos del comportamiento de la aplicación, tales como rendimiento, latencia y errores.

  1. Abre el endpoint de métricas en tu navegador http://{App-DNS}/actuator/prometheus. Deberías encontrar algo como lo que se muestra en la siguiente imagen : alt text

En la imagen se resaltan los distintos elementos que expone prometheus sobre cada metrica, como el nombre, el tipo, las etiquetas el valor y descripción.

  1. Examina el contenido del endpoint y busca métricas relacionadas con:
    • Número de solicitudes HTTP
    • Latencia o duración de las solicitudes
    • Códigos de estado HTTP
    • Uso de memoria o CPU
  2. En tu bitácora de laboratorio:

    • Selecciona dos métricas relevantes y describe qué información aportan sobre el sistema.
      • Menciona qué tipo de métrica es (gauge, counter, histograma, summary)
      • Con qué otras métricas podría estar relacionada (si aplica)? Por ejemplo, un aumento en peticiones podría influir en el uso de CPU
      • En qué escenarios puede ayudar esta métrica?
      • Qué etiquetas se utilizan para agrupar los datos (si aplica)?

✅ Verificación

Asegúrate de haber completado:

💡 Tip: Las métricas que selecciones te servirán para crear visualizaciones en la siguiente etapa.


📍 Próximos Pasos

Ahora que comprendes las métricas que expone la aplicación, es momento de visualizarlas en Grafana.


💾 Al hacer clic, tu tiempo será guardado automáticamente y continuarás a la siguiente etapa