Cualquier equipo de software sabe lo importante que es encontrar y solucionar rápidamente los problemas que afectan al cliente.
Para ayudar, en Akita hemos creado la herramienta de monitoreo de tiempo de creación de valor más rápida, sin necesidad de cambios de código ni paneles personalizados.
De uno de nuestros usuarios, JM Doerr en Threads:
“La simplicidad de Akita me atrajo. Llegué con la expectativa de que fuera realmente fácil de configurar y usar. Simplemente enciende las cosas y luego no tienes que preocuparte por eso. Está a la altura de eso”.
Estamos emocionados de anunciar nuestra versión beta ahora está abierta para todos y me encantaría que lo pruebes. Con la versión beta, es posible configurar Akita en 30 minutos para ver qué terminales de API están en uso, cuáles son lentos y cuáles arrojan errores.
Cómo llegó Akita a simplificar el monitoreo
De todos los desafíos en el monitoreo y la observabilidad, ¿cómo llegamos a centrarnos en el tiempo de valor? La respuesta corta: nuestra beta privada nos trajo aquí.
Los objetivos de Akita
Dados los grandes cambios en las arquitecturas de software en la última década, no debería sorprender que las necesidades de monitoreo también hayan cambiado.
El crecimiento de la economía de API, combinado con el auge de las arquitecturas orientadas a servicios, significa que la mayoría de las aplicaciones web son un montón de API. En estas aplicaciones, los desarrolladores no son responsables solo de su propio servicio, sino de cómo su servicio interactúa con otros servicios. Cada aplicación de software se ha convertido en su propio ecosistema, con sus propios comportamientos emergentes. Atrás quedaron los días en que un desarrollador podía concentrarse en aplicaciones simples y monolíticas.
Cuando inicié Akita, el objetivo era simple: facilitar a los usuarios la búsqueda y solución de problemas en producción. Para ayudar a los equipos a pagar la deuda de monitoreo más rápido de lo que la acumulan, tuve algunas restricciones estrictas sobre cómo debería ser el primer producto:
- Dado que estábamos construyendo Akita para combatir la complejidad con el aumento de las API en pilas tecnológicas heterogéneas, la solución debía ser lo más independiente posible del lenguaje.
- Para escalar fácilmente en entornos complejos de múltiples servicios, la solución debe requerir la menor intervención posible del desarrollador.
Pero quería que la investigación de los usuarios impulsara tanto la tecnología subyacente que usamos como las preguntas que ayudamos a responder a los desarrolladores.
Elegir la ruta (e)BPF
Debido a que la I+D tecnológica lleva tiempo, lo primero que decidimos fue un enfoque tecnológico. Después de docenas de entrevistas con los usuarios, llegamos a la conclusión de que no había suficiente estandarización entre las mallas de servicios o la telemetría abierta. En cambio, elegimos comenzar con la captura de paquetes de red: siempre que los equipos de software enviaran tráfico de API a través de la red, podríamos observarlo.
A mediados de 2020, creamos una forma de escuchar de forma pasiva el tráfico de la API sin cifrar mediante una tecnología denominada filtro de paquetes de Berkeley (BPF), a través de GoPacket. BPF nos permitió reconstruir paquetes de red para generar automáticamente especificaciones API. Teníamos la intención de que esta capacidad de descubrimiento de API fuera la base para el resto de nuestro producto.
Iterando hacia la simplicidad
Desde mediados de 2020 hasta mediados de 2022, iteramos sobre la generación de especificaciones de API para descubrir qué era más valioso. Tan pronto como enviamos la v0 de nuestra herramienta de generación de especificaciones API, nuestros usuarios nos dijeron que era demasiada información. No, no querían hacer cuadros de mando a partir de estos datos: querían menos información.
Inicialmente, pensamos que la forma de simplificar el producto era decirles a los usuarios cómo estaba cambiando su comportamiento de API. Nuestros usuarios no solo solicitaban esto, sino que también descargaban nuestras especificaciones de API para diferenciarlas a mano. Esto nos llevó a comenzar a iterar sobre prototipos de funciones de análisis de cambios que informaban a los usuarios sobre cambios importantes en sus API.
Al mismo tiempo, comenzamos a hacer que nuestros algoritmos de vigilancia del tráfico fueran en tiempo real, ya que la información actualizada es fundamental para que los equipos se mantengan al día con sus API. Resultó que esto último, en lugar de lo primero, nos llevó al momento “ajá” de nuestro producto.
Duplicar el tiempo de creación de valor
Esto nos llevó a un punto de inflexión en nuestra versión beta privada: mayo de 2022, cuando nuestros algoritmos de generación automática de tráfico se volvieron casi en tiempo real.
Hasta este punto, pensábamos que el análisis de cambios era el producto viable mínimo y que el monitoreo directo era simplemente la primera parte de la construcción. Pero tan pronto como el monitoreo directo se convirtió en tiempo real, comenzamos a recibir comentarios de que el descubrimiento automático de puntos finales de API, combinado con latencia casi en tiempo real e información de errores, fue lo “sorprendente”. El monitoreo directo les dio a nuestros primeros usuarios lo que necesitaban para encontrar y solucionar problemas; el análisis de cambios era agradable de tener.
En el verano de 2022, comenzamos a escuchar de nuestros usuarios de autoservicio entrantes sobre el valor que obtenían de nosotros. Por ejemplo, uno de nuestros usuarios adoptó Akita en lugar de Datadog porque lo ayudamos a localizar un problema con su terminal de pagos dentro de los cinco minutos posteriores a la integración.
Guilherme Mori, CTO de la startup brasileña de energía limpia zMatch, nos dijo:
“Los mapas API de Akita y el monitoreo por punto final nos han brindado la visibilidad que necesitamos en nuestro sistema, sin el trabajo de configurar nuestros tableros personalizados. Configurar Akita en Fargate fue rápido, fácil y más directo que las alternativas que consideramos”.
Los comentarios de los usuarios nos dijeron que era hora de duplicar el tiempo de valor.
Preparándonos para abrir nuestra beta
Tuvimos un desafío final antes de abrir nuestra versión beta: hacer que el producto fuera de autoservicio y ver si más usuarios lo utilizaban cada mes.
A partir de julio de 2022, las peculiaridades específicas de la plataforma significaron que muchos de nuestros usuarios necesitaban hablar con nosotros para instalar Akita. Después de pasar una cuarta parte instrumentando obsesivamente nuestro embudo de incorporación y hablando con todos los usuarios que querían hablar con nosotros, pudimos determinar las automatizaciones y los cambios en los documentos que solucionan muchos de estos problemas. Luego se convirtió en una cuestión de ver quién aparecía.
En los últimos meses, los usuarios no solo han podido integrar completamente el autoservicio, sino que también han podido obtener resultados con los que están satisfechos sin nuestra ayuda. Hemos podido ampliar nuestra base de usuarios mientras crecía Akita en todos los equipos y reteníamos a los usuarios satisfechos, sin sobrecargar nuestros sistemas.
Ahora estamos en el punto en el que un desarrollador podría unirse a nuestra versión beta y comenzar a ver información significativa sobre sus API al poco tiempo de comenzar la incorporación. Como dice David Gomez-Urquiza, CTO de Deal Engine:
“Había oído hablar de eBPF, pero nunca pensé que sería tan fácil colocar a Akita en Kubernetes. Acabo de volver a implementar con una plantilla de implementación diferente y Akita como sidecar. Fue realmente valioso poner a Akita en nuestro clúster y observar el tráfico de inmediato”.
Bienvenido a nuestra beta abierta
Hoy en día, la industria del monitoreo y la observabilidad está obsesionada con brindar a los equipos de software más datos sobre su sistema, más rápido. Más datos suenan atractivos, hasta que usted está mirando a través de miles de registros para averiguar sobre qué alertar o para encontrar lo que conduce a un error de usuario específico.
En una época en la que la mayoría de las demás soluciones se centran en dar a los usuarios más información, Akita le da la vuelta al problema y pregunta: ¿cuál es la cantidad de información más importante y más pequeña que un desarrollador necesita saber para encontrar y solucionar un problema de alto impacto? Cada vez más, los equipos no necesitan conocer todos los detalles sobre un sistema para asegurarse de que se mantenga activo: solo necesitan saber si hay es un problema—y dónde.
Nos complace invitarlo al lanzamiento de nuestra versión beta abierta.
Con la versión beta abierta de Akita, puede integrarse en Docker, plataformas de contenedores y Kubernetes en menos de 30 minutos, sin necesidad de cambios en el código. Usted obtiene:
Nuestros usuarios informaron que pudieron integrarse en menos de 30 minutos y detectar problemas dentro de los cinco minutos posteriores a la integración, sin necesidad de paneles personalizados.
Theo Budiyanto de Saweria dice:
“La experiencia de configuración de Akita ha sido muy sencilla. Solía trabajar para Splunk y probé muchas otras herramientas antes, incluidas Sumo Logic y Datadog. Akita es, literalmente, simplemente plug and play”.
Pruébenos aquí! (Y echa un vistazo a nuestros documentos aquí.)