La observabilidad es la práctica de instrumentar sistemas con herramientas accionables de información sobre el por qué de la existencia de errores y problemas.
Monitorear, otorga instrumentación que reúne información sobre los sistemas y les permite responder rápidamente ante la existencia de errores y problemas.
Qué es Full Stack Observability
Se dice que un sistema posee un Full Stack Observability, ya que existen diferenciadores significativos entre los diferentes equipos de desarrollo, DevOps, líderes de negocio, etc.
Las arquitecturas modernas, requieren de un nuevo enfoque de observability los cuales dependen del impacto que los equipos de software puede producir.
Actualmente, extisten las siguientes tendencias sociales:
- Presión a la innovación rápida
Refiriéndose a la presión con la que se entregan nuevas características y experiencias a un mercado rápido de competición.
- Altas expectativas del cliente
Los clientes esperan más con menor tolerancia a errores dejando que MTTD y MTTR sea evaluado para un mínimo tiempo acción.
- El surgimiento de la automatización
Habiendo cada cierto tiempo, nuevas apariciones de herramientas y tecnologías. La automatización es un sinónimo de “Todo es software y por tanto, repetible-programable”
Retos de Full Stack Observability
Denotando, de lo anterior, la realidad de encara frente a grandes retos que son conducidos por la existencia de Full Stack Observability en un sistema informático.
1. Grandes complejidades
Ya que una aplicación monolítica puede ser dividida en una docena de microservicios, los equipos encaran una complejidad de escala, dejando la responsabilidad al conocimiento de algunos que heredan.
2. Altos riesgos
Una frecuencia de despliegue y una infraestructura dinámica, introduce un mayor índice de riesgos lo que significa en un monitoreo y mantenimiento en procesos de despliegue (mediante herramientas o pipelines especializados)
3. Deudas técnicas
Con el auge de contenedores y microservicios, los equipos de desarrollo encaran retos relacionados al diseño, construcción y despliegue de aplicaciones, donde cada integrante debe entender y poder solucionar secciones que nos son del todo familiares en un proceso tradicional de desarrollo.
4. Cantidad de herramientas
Habiendo entornos híbridos, nuevas formas de despliegue y múltiples requerimientos a solucionar día con día, deja como resultado un alto volumen de telemetría de información por operar, cambiando entre contextos e intentando ser precisos y eficiente en el acto en sí.
Para lograr un Full Stack Observability en nuestros sistemas, debemos tener claro 3 elementos core:
- Único recurso de verdad
Sin importante de la capa, recolectar toda la información en un único recurso o destino permitirá aplicar instrumentación donde se necesite mayor visibilidad.
- Contexto de conexión y de trabajo
Emprender con el concepto MELT (Metrics-Events-Logs-Traces)
- Exploración y almacenamiento de datos
Al recolectar y unificar la información, permite reducir la deuda técnica entre el uso de múltiples herramientas.
Contribución creada por: Emmanuel Rodríguez
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?