Los 10 principios de observabilidad
- Curaduría vs. participación
Una plataforma de observabilidad moderna sobresale en la curación: reduce la complejidad al tamaño y selecciona y presenta información relevante para los usuarios. Pero una plataforma de este tipo también debe admitir la participación, por ejemplo, facilitando a los usuarios el trabajo con métricas y fuentes de datos personalizadas.
La curaduría y la participación son igualmente importantes en una plataforma de observabilidad moderna. La curación brinda a los equipos una ventaja crítica de productividad y eficiencia: cuanto más pequeño es el pajar, más fácil es encontrar la aguja. (Los clientes de New Relic pueden reconocer nuestra detección de anomalías de rastreo distribuido o el explorador de clústeres de Kubernetes como ejemplos de cómo la curación ayuda a lograr la observabilidad).
La participación, por otro lado, otorga una gran importancia a la versatilidad: capturar y manipular datos de manera valiosa, incluso cuando la plataforma no sabe cómo dar forma o presentar esos datos. La participación también se basa en la programabilidad: dar a los usuarios las herramientas, y especialmente las API, para ayudarlos a ayudarse a sí mismos.
- Apoya a los usuarios avanzados
Los usuarios avanzados son un segmento importante de la base de usuarios de cualquier producto. Estos son los usuarios con más probabilidades de acceder, y apreciar, las capacidades más profundas que diferencian a un producto de sus competidores. Y los usuarios avanzados son a menudo los campeones más respetados y efectivos de un producto.
Cuando se trata de monitoreo y observabilidad de aplicaciones, los usuarios avanzados tienden a tener trabajos muy difíciles y exigentes; muchos de ellos, por ejemplo, viven prácticamente en sus entornos de desarrollo integrado (IDE). Estos usuarios quieren automatizar todo, y son los que más se beneficiarán de una plataforma de observabilidad programable y extensible. La plataforma New Relic, por ejemplo, aborda este objetivo a través de API que permiten a los usuarios avanzados consumir datos (como la creación de métricas personalizadas), además de inyectar datos para que la plataforma New Relic los use.
- Regla de aplicaciones
Cuando hablamos con los clientes de New Relic, muchos de ellos entregan un mensaje similar: "Lo que nos importa es si nuestra aplicación es saludable o no". Y cuando una aplicación experimenta problemas, los clientes quieren identificar la fuente del problema de la manera más rápida y precisa posible.
La lección que aprendimos de estos clientes es fuerte y clara: una plataforma de observabilidad es más valiosa cuando se centra en medir el rendimiento de las aplicaciones y en superar los obstáculos entre el rendimiento de las aplicaciones.
-
Abrazar el cambio
El ritmo del cambio en el espacio de observabilidad es impresionante, y las soluciones de observabilidad deben tomar decisiones difíciles sobre las capacidades y prioridades. Los planes y características que tenían sentido hace seis meses pueden ya no ser relevantes, y aunque las hojas de ruta de los productos siguen siendo importantes, las soluciones de observabilidad deben adaptarse fácilmente a las realidades de la innovación tecnológica en rápido movimiento.
-
Transparencia total
A veces, la observabilidad requiere una visión completa y de alto nivel del rendimiento de las aplicaciones. Otras veces, se trata de profundizar en detalles muy granulares, sin sorpresas y con un contexto completo.
Una buena plataforma de observabilidad ofrece ambas capacidades. También proporciona una ruta consistente, intuitiva y transparente para moverse entre vistas de alto nivel y de nivel inferior.
Por ejemplo, supongamos que está viendo una vista resumida del rendimiento en un gráfico de series temporales. Notas un aumento en los errores y quieres saber más sobre lo que está sucediendo. Debería poder profundizar desde esa vista de resumen en los datos subyacentes, tal vez para ver excepciones no controladas, o incluso para ver el marco de pila o las líneas de código que introdujeron el error.
Igual de importante, tal vista debe mostrar las métricas útiles que espera ver, junto con el contexto requerido para comprender lo que realmente está sucediendo. Este tipo de transparencia es especialmente importante en situaciones de alto estrés y alta urgencia donde los equipos de desarrollo y operaciones quieren centrarse en solucionar el problema, no en encontrarlo.
No te pierdas: Complejidad en contexto: microservicios y seguimiento distribuido [Video]
- Nadie lo sabe todo
La observabilidad no es como una película de Hollywood: los días de aplicaciones monolíticas que una sola persona podía entender completamente, desde la sopa hasta las nueces, se han ido. No hay un genio heroico montado en un caballo blanco para salvar el día cuando tienes cientos o incluso miles de variables para observar. En entornos complejos y modernos, incluso los mejores ingenieros de guardia pueden entender una parte de la imagen completa, pero es poco probable que tengan una visión completa de todo lo que necesitan rastrear.
Aquí en New Relic, por ejemplo, nuestra organización de ingeniería incluye más de 60 equipos de desarrollo. En un entorno así, es casi imposible para cualquiera tener una comprensión verdaderamente actualizada y completa de lo que hace cada equipo y de cómo progresan sus proyectos. Y las organizaciones de desarrollo empresarial más grandes son órdenes de magnitud más grandes que las nuestras.
Todo esto demuestra por qué una plataforma de observabilidad moderna tiene que proporcionar suficiente información para que quien esté de guardia, no solo un héroe de soporte mítico que lo sabe todo y lo ve todo, encuentre y solucione el problema.
- Fácil de comenzar
El tiempo de obtención de valor es especialmente importante en una plataforma de observabilidad, en la que los equipos confían para resolver sus problemas de aplicaciones más urgentes y costosos. Pero comenzar rápidamente fuera de la caja no siempre es fácil, especialmente a medida que las plataformas de observabilidad adquieren cada vez más fuentes de datos y cubren más casos de uso.
Esta es la razón por la que una plataforma de observabilidad debe actualizarse constantemente para hacer que más elementos, por ejemplo, nuevos agentes de usuario y nuevas métricas, sean rastreables desde el primer momento. Y el desarrollador de la plataforma debe esforzarse por hacer que su experiencia lista para usar sea lo más intuitiva posible, sabiendo que muchos clientes, para bien o para mal, experimentarán primero la plataforma mientras la usan para resolver un incidente.
- Se trata de la plataforma
Una plataforma de observabilidad moderna debe adoptar un enfoque completo de extremo a extremo. Claro, hay muchas soluciones de puntos de observabilidad perfectamente competentes. Y están bien para resolver muchos tipos de problemas: una solución de punto de monitoreo frontend, por ejemplo, puede identificar problemas de JavaScript que pueden crear importantes cuellos de botella en el rendimiento.
Los problemas de rendimiento, sin embargo, no siempre son lo suficientemente educados como para detenerse donde las soluciones puntuales pueden encontrarlos. Muchos problemas de frontend, por ejemplo, se originan profundamente en la pila de aplicaciones o incluso dentro de problemas de infraestructura. Y a medida que las aplicaciones y la infraestructura continúan volviéndose más complejas, la necesidad de una plataforma de observabilidad de pila completa será aún más importante.
- "Rápido" es una característica
Para una plataforma de observabilidad moderna, es sumamente importante obtener la información correcta rápidamente para las personas que más la necesitan. Lograr este objetivo puede marcar la diferencia entre resolver un problema antes de que afecte a los clientes; o detectar el problema demasiado tarde y potencialmente perder miles, o incluso millones, de dólares en ingresos, sin mencionar el posible daño a la imagen de marca de una empresa y las relaciones con los clientes.
Pero moverse rápido no se trata solo de ir rápido; también se trata de precisión, fiabilidad y capacidad de respuesta.
Claro, es esencial minimizar el "tiempo hasta el cristal", la brecha crítica entre el momento en que ocurre un evento y el momento en que una plataforma emite una alerta. Dentro de este proceso, sin embargo, hay muchas partes móviles involucradas, desde detectar un problema hasta alertar a los miembros correctos del equipo y proporcionar información procesable, todo lo cual debe unirse y funcionar en este momento.
Es por eso que es especialmente importante, pero a menudo bastante desafiante, que una plataforma de observabilidad entregue alertas relevantes y específicas. También es importante que los proveedores respondan con prontitud cuando los clientes tengan preguntas o inquietudes sobre estas capacidades críticas.
- Abierto por diseño
Los sistemas y estándares abiertos, como el recientemente anunciado proyecto OpenTelemetry, se están volviendo cada vez más centrales a medida que las empresas modernas trabajan para administrar la complejidad, reducir la fricción y evitar el bloqueo de proveedores. New Relic, por ejemplo, está totalmente invertido en brindar soporte a nuestros clientes openTracing, OpenCensus y OpenTelemetry, lo que permite a los usuarios acceder y visualizar todos sus datos de telemetría correlacionados, incluidas las métricas personalizadas, a través del rastreo distribuido de New Relic y la plataforma New Relic One.
El objetivo de New Relic es permitir que los clientes se muevan más rápidamente y con mayor agilidad, incluso a medida que aprendemos más sobre las necesidades y prioridades comerciales de nuestros clientes. Y creemos que todos estos son objetivos que valen la pena para cualquier plataforma de observabilidad moderna.