¿Qué es la supervisión?

Una vez implementada una aplicación en producción, la fase de supervisión ofrece información sobre el rendimiento y los patrones de uso de la aplicación para poder identificar, mitigar o resolver problemas.

Image of graph that shows how monitoring can indicate application performance and usage.

Objetivos de la supervisión

Unos de los objetivos de la supervisión es lograr una alta disponibilidad minimizando las métricas clave que se miden en términos de tiempo:

  • Tiempo de detección (TTD): cuando surgen problemas de rendimiento u otras incidencias, los datos de diagnóstico enriquecidos sobre los problemas se trasladan a los equipos de desarrollo a través de la supervisión automatizada.
  • Tiempo de mitigación (TTM): los equipos de DevOps actúan sobre la información para mitigar los problemas lo antes posible para que los usuarios ya no se vean afectados.
  • Tiempo de corrección (TTR): se calculan los tiempos de resolución y los equipos trabajan para mejorar con los plazos. Después de la mitigación, los equipos trabajan en cómo subsanar la causa principal de los problemas para que no se repitan.

Un segundo objetivo de la supervisión es habilitar el aprendizaje validado mediante el seguimiento del uso. El concepto básico del aprendizaje validado es que cada implementación es una oportunidad para realizar un seguimiento de los resultados experimentales que admiten o reducen las hipótesis que llevaron a la implementación. El seguimiento del uso y las diferencias entre versiones permite a los equipos medir el impacto del cambio y fomentar la toma de decisiones de la organización. Si se reduce una hipótesis, el equipo puede fracasar y responder rápido a los errores o dinamizarlos. Si se acepta la hipótesis, el equipo puede doblar los esfuerzos o perseverar. Estas decisiones fundamentadas por datos conducen a nuevas hipótesis y a la priorización del trabajo pendiente.

Conceptos clave

La telemetría es el mecanismo para recopilar datos de la supervisión. La telemetría puede usar agentes instalados en entornos de implementación, un SDK que se base en marcadores insertados en el código fuente, registro de servidores o una combinación de estos. Normalmente, la telemetría distinguirá entre el procesamiento de datos optimizado para alertas en tiempo real y paneles y datos de mayor volumen necesarios para solucionar problemas o análisis de uso.

La supervisión sintética usa un conjunto de transacciones para evaluar el rendimiento y la disponibilidad. Las transacciones sintéticas son pruebas predecibles que tienen la ventaja de permitir la comparación de versión a versión de forma muy previsible. La supervisión de usuarios reales (RUM), por otro lado, analiza la experiencia del explorador del usuario, el dispositivo móvil o el equipo de escritorio. Esto tiene en cuenta condiciones de último tramo, como redes de telefonía móvil, enrutamiento de Internet y almacenamiento en caché. A diferencia de las sintéticas, RUM normalmente no aporta indicadores repetibles a lo largo del tiempo.

La supervisión se suele usar para pruebas en fase de producción. Una implementación bien supervisada transmite datos sobre su estado y rendimiento para que se puedan detectar incidencias de producción de inmediato. En combinación con un proceso de creación de versión de implementación continua, la supervisión detectará nuevas anomalías y favorecerá su rápida mitigación. Esto permite detectar los eventos desconocidos en la actividad de la aplicación que no se pueden prever en entornos de preproducción.

La supervisión eficaz es esencial para permitir que los equipos de DevOps entreguen antes, reciban comentarios del equipo de producción y aumenten la satisfacción, la adquisición y la retención de clientes.

Pasos siguientes

Obtenga más información sobre las funcionalidades de supervisión de Azure Monitor.

Descubra cómo configurar y usar Application Insights para la supervisión.