OpenSource APM Pinpoint

idéias contínuas

Bom para você.

O Application Performance Monitoring (APM) resolve as tarefas de monitoramento, gerenciamento de acessibilidade e diretamente o desempenho do aplicativo.
As páginas da Habr já cobriam o AWS Glowroot e o MoSKito gratuitos , mas o Pinpoint permanecia nas sombras.

Cheguei à escolha de estações de trabalho de código aberto, disponíveis hoje como uma alternativa às ferramentas pagas, com base nas especificidades de nossos aplicativos e requisitos do cliente, onde as soluções em nuvem são absolutamente excluídas. Anteriormente, em um dos projetos, usei o software Dynatrace - um dos inovadores e líderes da APM. A empresa anteriormente possibilitou o uso legal de seu produto após um período de teste.

Os desenvolvedores posicionam o Pinpoint como uma ferramenta para sistemas distribuídos altamente escalonáveis ​​que permitirão:

  • veja o mapa e a topologia dos componentes do aplicativo
  • monitoramento de métricas em tempo real
  • ver todas as transações
  • Instale agentes sem editar o código do aplicativo
  • obtenha menos de 3% de aumento na carga do seu sistema ao realizar métricas

Em 1 de abril de 2018, foi anunciado o suporte para os seguintes módulos:

  • JDK 6+
  • Tomcat 6/7/8, Jetty 8/9, JBoss EAP 6, Resina 4, Websphere 6/7/8, Vertx 3.3 / 3.4 / 3.5
  • Mola, bota de mola (Tomcat incorporado, molhe)
  • Cliente HTTP Apache 3.x / 4.x, JDK HttpConnector, GoogleHttpClient, OkHttpClient, NingAsyncHttpClient
  • Cliente Thrift, Serviço Thrift, 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

Mas acredito que, para sistemas independentes, ele fará o melhor e, no futuro, haverá a possibilidade de escalar junto com um aumento na carga no seu sistema.

O Pinpoint consiste em seis componentes principais:

  • Apache HBase - como um repositório de métricas
  • Apache ZooKeeper - como um serviço de configuração e sincronização
  • Apache Flink - mecanismo de streaming
  • Coletor - Agente de aceitação de métricas
  • Interface de usuário WebUI
  • Agente - agente de envio métrico

Collector e WebUI são contêineres de guerra, arquivo jar do agente para criação de perfil, que é adicionado ao JAVA_OPTS sem nenhuma alteração no código do aplicativo. Opcionalmente, os desenvolvedores propõem o uso do Mysql DBMS for WebUI para configurar usuários, grupos e alertas.

Para facilitar a instalação, existe um repositório oficial do docker pontual .

A página principal mostra claramente uma imagem dos componentes do aplicativo.

imagem

Você pode examinar as transações em detalhes e encontrar um gargalo.

imagem

Existe uma opção para exibir métricas em tempo real.

imagem

É possível examinar em detalhes o que aconteceu no momento certo.

imagem

O Pinpoint é uma ferramenta maravilhosa que definitivamente vale a pena ter no seu arsenal.

Feliz dia do administrador do sistema!

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


All Articles