OpenSource APM Pinpoint

un aperçu continu

Bon pour toi.

La surveillance des performances des applications (APM) résout les tâches de surveillance, de gestion de l'accessibilité et directement des performances des applications.
Les pages Habr couvraient déjà les AWS Glowroot et MoSKito gratuits , mais Pinpoint restait dans l'ombre.

Je suis arrivé au choix des postes de travail open source, qui sont disponibles aujourd'hui comme une alternative aux outils payants, en fonction des spécificités de nos applications et des besoins des clients, où les solutions cloud sont absolument exclues. Plus tôt sur l'un des projets, j'ai utilisé le logiciel Dynatrace - l'un des innovateurs et leaders APM. La société avait auparavant permis d'utiliser son produit légalement après une période d'essai.

Les développeurs positionnent Pinpoint comme un outil pour des systèmes distribués hautement évolutifs qui vous permettront de:

  • voir la carte et la topologie des composants d'application
  • surveillance en temps réel des métriques
  • voir toutes les transactions
  • Installer des agents sans modifier le code de votre application
  • obtenez moins de 3% d'augmentation de la charge sur votre système lors de la prise de mesures

Le 1er avril 2018, la prise en charge des modules suivants a été annoncée:

  • 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 (Embarqué Tomcat, Jetty)
  • Apache HTTP Client 3.x / 4.x, JDK HttpConnector, GoogleHttpClient, OkHttpClient, NingAsyncHttpClient
  • Client Thrift, Service Thrift, FOURNISSEUR DUBBO, CONSOMMATEUR DUBBO
  • ActiveMQ, RabbitMQ
  • MySQL, Oracle, MSSQL, CUBRID, POSTGRESQL, MARIA
  • Arcus, Memcached, Redis, CASSANDRA
  • iBATIS, MyBatis
  • DBCP, DBCP2, HIKARICP
  • gson, jackson, json lib
  • log4j, déconnexion

Mais je crois que pour les systèmes autonomes, il fera tout ce qu'il y a de mieux, et à l'avenir, il y aura la possibilité d'évoluer avec une augmentation de la charge sur votre système.

Pinpoint se compose de six composants principaux:

  • Apache HBase - en tant que référentiel de métriques
  • Apache ZooKeeper - en tant que service de configuration et de synchronisation
  • Apache Flink - Moteur de streaming
  • Collecteur - Agent d'acceptation des métriques
  • Interface utilisateur WebUI
  • Agent - agent d'envoi de mesures

Collector et WebUI sont des conteneurs de guerre, un fichier jar d'agent pour le profilage, qui est ajouté à JAVA_OPTS sans aucune modification de votre code d'application. Facultativement, les développeurs proposent d'utiliser le SGBD Mysql pour WebUI pour configurer les utilisateurs, les groupes et les alertes.

Pour une installation facile, il existe un référentiel officiel de docker .

La page principale affiche assez clairement une image des composants de l'application.

image

Vous pouvez examiner les transactions en détail et trouver un goulot d'étranglement.

image

Il existe une option pour afficher les métriques en temps réel.

image

Il est possible d'examiner en détail ce qui s'est passé au bon moment.

image

Pinpoint est un merveilleux outil qui vaut vraiment la peine d'avoir dans votre arsenal.

Bonne journée de l'administrateur système!

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


All Articles