OpenSource APM Pinpoint

percepciones continuas

Bien por ti.

Application Performance Monitoring (APM) resuelve las tareas de monitoreo, gestión de accesibilidad y directamente el rendimiento de la aplicación.
Las páginas de Habr ya cubrían el AWS Glowroot y MoSKito gratuitos , pero Pinpoint permaneció en las sombras.

Llegué a la elección de estaciones de trabajo de código abierto, que están disponibles hoy como una alternativa a las herramientas pagas, en base a los detalles de nuestras aplicaciones y los requisitos del cliente, donde las soluciones en la nube están absolutamente excluidas. Anteriormente en uno de los proyectos utilicé el software Dynatrace , uno de los innovadores y líderes de APM. La compañía previamente hizo posible usar su producto legalmente después de un período de prueba.

Los desarrolladores posicionan a Pinpoint como una herramienta para sistemas distribuidos altamente escalables que le permitirán:

  • ver el mapa y la topología de los componentes de la aplicación
  • monitoreo en tiempo real de métricas
  • ver todas las transacciones
  • Instale agentes sin editar el código de su aplicación
  • obtenga menos del 3% de aumento en la carga de su sistema al tomar métricas

El 1 de abril de 2018, se anunció la compatibilidad con los siguientes módulos:

  • JDK 6+
  • Tomcat 6/7/8, Jetty 8/9, JBoss EAP 6, Resin 4, Websphere 6/7/8, Vertx 3.3 / 3.4 / 3.5
  • Spring, Spring Boot (Tomcat integrado, embarcadero)
  • Apache HTTP Client 3.x / 4.x, JDK HttpConnector, GoogleHttpClient, OkHttpClient, NingAsyncHttpClient
  • Thrift Client, Thrift Service, DUBBO PROVIDER, DUBBO CONSUMER
  • ActiveMQ, RabbitMQ
  • MySQL, Oracle, MSSQL, CUBRID, POSTGRESQL, MARIA
  • Arcus, Memcached, Redis, CASSANDRA
  • iBATIS, MyBatis
  • DBCP, DBCP2, HIKARICP
  • gson, jackson, json lib
  • log4j, logback

Pero creo que para los sistemas independientes hará lo mejor, y en el futuro habrá la posibilidad de escalar junto con un aumento de la carga en su sistema.

Pinpoint consta de seis componentes principales:

  • Apache HBase - como repositorio de métricas
  • Apache ZooKeeper: como servicio de configuración y sincronización
  • Apache Flink - Motor de transmisión
  • Coleccionista - Agente de aceptación de métricas
  • Interfaz de usuario de WebUI
  • Agente: agente de envío métrico

Collector y WebUI son contenedores de guerra, archivo jar de agente para la creación de perfiles, que se agrega a JAVA_OPTS sin ningún cambio en el código de su aplicación. Opcionalmente, los desarrolladores proponen usar el DBMS Mysql para WebUI para configurar usuarios, grupos y alertas.

Para una fácil instalación, hay un repositorio oficial de pinpoint-docker .

La página principal muestra con bastante claridad una imagen de los componentes de la aplicación.

imagen

Puede examinar las transacciones en detalle y encontrar un cuello de botella.

imagen

Hay una opción para mostrar métricas en tiempo real.

imagen

Es posible examinar en detalle lo que sucedió en el momento adecuado.

imagen

Pinpoint es una herramienta maravillosa que definitivamente vale la pena tener en tu arsenal.

¡Feliz día del administrador del sistema!

Source: https://habr.com/ru/post/es418059/


All Articles