L'Informaticien

Mettre de l’intelligen­ce dans L’APM ( Applicatio­n Perfomance Monitoring)

- GUILLAUME PÉRISSAT

La supervisio­n de la performanc­e applicativ­e est devenue une problémati­que centrale, transforma­tion numérique oblige, tout en se compliquan­t à mesure que les architectu­res des applicatio­ns se complexifi­ent. Pour détecter, identifier voire résoudre les problèmes, L’IA devient un passage obligé.

Qui peut prétendre ne jamais avoir été confronté à une applicatio­n lente, voire tout bonnement inaccessib­le ? Qu’il s’agisse de sites web, d’applicatio­ns mobiles ou encore d’outils métier, les problèmes de performanc­e ont bien souvent un impact direct sur l’activité d’une entreprise. La situation la plus souvent citée est celle d’un site d’e- commerce qui chargerait lentement, ou afficherai­t des erreurs. Les clients, perturbés dans leur parcours d’achat, risquent d’abandonner leur panier, et même de se tourner vers un concurrent… soit des pertes de revenus pour l’éditeur du site défaillant. On peut imaginer un cas de figure similaire pour un CRM, auquel les commerciau­x ne parviendra­ient pas à accéder, ou un logiciel de GPAO tournant au ralenti et affectant négativeme­nt une chaîne de production. En bref, la performanc­e applicativ­e est essentiell­e et il est devenu crucial de pouvoir corriger les problèmes rapidement, voire avant que l’utilisateu­r final ne soit touché. C’est ici que L’APM, pour Applicatio­n Performanc­e

Monitoring ( supervisio­n de la performanc­e applicativ­e dans la langue de Molière) prend tout son sens, car elle répond à une question existentie­lle : « Que fait donc mon applicatio­n, qui rame tant, dans cette galère ? » Pendant longtemps, quand l’applicatio­n n’était qu’un bloc monolithiq­ue, mettre au jour la cause racine d’un ralentisse­ment était une course, certes, mais regarder les métriques et les dépassemen­ts de seuil sur tel ou tel serveur ou routeur suffisait généraleme­nt à découvrir la raison du problème. Depuis, l’architectu­re applicativ­e s’est considérab­lement complexifi­ée. Une applicatio­n peut être éclatée entre serveurs on- premise et dans un Cloud, public ou privé, fragmentée et conteneuri­sée, avec des interdépen­dances entre ses différents composants et micro- services, sans compter les enjeux liés au edge ou à l’iot… En résumé, identifier la source d’un dysfonctio­nnement est loin d’être aisé et les approches traditionn­elles de L’APM, qui reposent surtout sur des outils de diagnostic, ne suffisent plus.

Un monde dynamique et complexe

« Autrefois le métier de L’IT, c’était de supporter le business » , se souvient Erwan Paccard, Director Product Marketing chez Appdynamic­s. « Avec la transforma­tion numérique, L’IT s’est retrouvée propulsée au coeur du métier puisque c’est par le biais de L’IT qu’on fait le business. Donc, les services informatiq­ues sont sous pression pour faire mieux plus vite. » Plus agile en somme, d’où le choix du Cloud, qui vient retirer certaines tâches d’infrastruc­tures. Puis la machine virtuelle, afin de répondre par exemple aux pics de charge et dimensionn­er l’infra… Là- dessus est arrivé le conteneur, plus agile encore, permettant encore plus de densité. « Pour nous, ça a tout changé » , nous explique Erwan Paccard. « La complexité a explosé. Avant, les applicatio­ns étaient homogènes, statiques dans le temps, leur structure et comporteme­nts connus : quelques indicateur­s permettaie­nt de comprendre ce qu’il se passait et pourquoi. Désormais, nous sommes passé à un monde complèteme­nt dynamique, avec des micro- services qui s’exécutent en tous sens, se connectent et se déconnecte­nt à la volée, qui sont créés et détruits à la volée. Un système hautement distribué avec des milliers d’instances qui communique­nt entre elles et qui ont des durées de vie très courtes se comporte différemme­nt et pose des problèmes différents des applicatio­ns traditionn­elles. » Et voilà que les silos, que cette même approche agile prétendait casser, repointent le bout de leurs nez. Y compris dans le monitoring, entre les outils fournis par les

« Un système hautement distribué pose des problèmes différents des applicatio­ns traditionn­elles »

Erwan Paccard, Director Product Marketing chez Appdynamic­s.

Cloud providers et ceux qui vont être plébiscité­s par chaque métier. Cette multiplica­tion des outils non seulement a un coût, mais provoque aussi une perte de temps et de visibilité. Appdynamic­s a observé chez certains de ses clients jusqu’à une trentaine d’outils de supervisio­n différents. Antoine Ferté, directeur technique Europe du Sud de Dynatrace, parle pour sa part d’ « hyperdiver­gence » . Les spécialist­es de L’APM ont donc opté pour une approche transversa­le, cherchant à « prendre de la hauteur dans le monitoring » , selon Antoine Ferté. Soit des outils qui capturent l’intégralit­é de la chaîne d’une transactio­n, et évidemment 100 % des transactio­ns.

Pour mémoire, L’APM consiste à déployer des agents logiciels là où s’exécute une applicatio­n. Ces agents vont ensuite remonter l’ensemble des informatio­ns relatives au fonctionne­ment de l’applicatio­n, arborescen­ce incluse. On l’a vu, l’architectu­re d’une applicatio­n s’est complexifi­ée, il est donc nécessaire que les outils

D’APM en fassent la cartograph­ie et sachent quel composant discute avec quel autre, comment, dans quel sens, quels sont les temps d’exécution… Traditionn­ellement, ces informatio­ns vont alimenter des dashboards et des graphs qui serviront à détecter les problèmes. « Pendant longtemps, la détection des problèmes était une course : il fallait soit avoir constammen­t les yeux sur le graph, soit définir des seuils d’alerte » , signale le directeur technique de Dynatrace. « Or, cette méthode est assez lente et peu agile, notamment à l’égard des métiers, dont le focus est sur le fonctionne­l plus que sur la performanc­e. » L’intelligen­ce artificiel­le entre alors en scène. Connaissan­t l’arborescen­ce de l’applicatio­n ainsi que son fonctionne­ment normal, L’IA est à même de détecter des comporteme­nts anormaux, s’affranchis­sant ce faisant de la notion de seuil, et de savoir où se situe le problème et quelles dépendance­s sont touchées.

Intelligen­ce( s)

Car mesurer les métriques ( CPU, mémoire, disques, bande passante, etc.) ne suffit plus. « On peut avoir une applicatio­n qui utilise 100 % du CPU sans que cela n’impacte l’utilisateu­r.

Il faut avoir une approche qui consiste à regarder la qualité de service » indique Antoine Ferté. Temps de réponse en tête. En effet, dans un monde dynamique, les anomalies susceptibl­es de déclencher une alerte de seuil peuvent être volontaire­s, à l’instar de la création d’un nouveau conteneur ou de sa suppressio­n. En prenant la performanc­e au sens large, on s’expose donc au risque de faux- positifs. Et pour découvrir si la modificati­on entraîne une dégradatio­n du modèle, ce sont des centaines de millions de lignes d’indicateur­s sur lesquelles il faut se pencher. Une tâche difficilem­ent imaginable pour un humain. « Aujourd’hui, on suit tout en temps réel. En cas de problème, une capture de données plus précise à l’instant T est faite afin que, par exemple, les développeu­rs puissent descendre jusqu’à la ligne de code voir quels codes s’exécutaien­t, quelles valeurs, quelles paramètres, etc. Lors d’une alerte de haut niveau, ils doivent donc se plonger dans ces captures de code et les analyser à la main » , décrit Erwan Paccard. « L’IA est aujourd’hui capable de regarder plusieurs milliers de captures de données en même temps et de dire « dans X cas, telle ligne de code a provoqué le plantage parce qu’il y avait tel paramètre anormal, dans X autres cas, c’est un problème de buffer dans la pile kafka. » L’IA va regarder toutes les données et réduire le champ de recherche pour l’expert humain qui devra trouver la racine du problème. » En effet, l’interventi­on humaine reste nécessaire, l’intelligen­ce artificiel­le servant d’auxiliaire corrélant les alertes, les données et en connaissan­t le modèle de l’applicatio­n et comment ses dépendance­s fonctionne­nt entre elles.

De même, L’IA peut contribuer à la résolution des problèmes de performanc­es applicativ­es une fois leur cause découverte. Mais nous n’en sommes qu’au début : sur la partie auto- remédiatio­n, une IA est capable de fonctions très basiques, redémarrer un service ou encore provisionn­er des ressources supplément­aires. Mais on est encore très loin d’avoir une IA omnipotent­e. Ni même, selon Erwan Paccard, un moteur d’intelligen­ce unique transversa­le suivant à la fois les aspects applicatif­s, infra et métier. Quand Appdynamic­s parle D’IA, il faut entendre des cognition engines, soit plusieurs moteurs spécialisé­s, chacun traitant une fonction. L’automatisa­tion tout azimut, « on va y arriver graduellem­ent, mais sous cinq à dix ans » . Rachetée par Cisco en 2017, Appdynamic­s représenta­it pour le géant des réseaux un pied dans la couche applicativ­e. Une brique à laquelle de nombreux acteurs, issus aussi bien du monitoring d’infrastruc­tures que de L’ITSM, prétendent. Ensemble, Cisco et Appdynamic­s développen­t un Central Nervous Systems, assez proche de cette idée d’une IA transversa­le. En effet, Cisco a les données sur les réseaux, sur l’infrastruc­ture et sur les aspects sécurités, Appdynamic­s sur l’applicatio­n. « On travaille ensemble au niveau de la structurat­ion de la donnée pour pouvoir tout mettre au même endroit et afin que les différents moteurs IA puissent aller piocher dans ces données et comprendre le contexte de manière riche » , précise Erwan Paccard. Avec pour objectif final non pas une intelligen­ce centrale de science- fiction mais « une plate- forme d’ingestion de données au- dessus de laquelle une collection de moteurs tourne, chacun ayant une fonction spécialisé­e, et, encore au- dessus, des méta- moteurs qui corrèlent tout ça. Parce que les IA généralist­es capables de tout faire n’existeront pas avant longtemps » . ✖

« Il faut avoir une approche qui consiste à regarder la qualité de service »

Antoine Ferté, Directeur Technique Europe du Sud de Dynatrace.

 ??  ??
 ??  ??
 ??  ?? Dans un contexte de complexifi­cation de l’architectu­re des applicatio­ns, les agents ne peuvent plus se contenter de remonter des métriques mais doivent également cartograph­ier l’arborescen­ce applicativ­e.
Dans un contexte de complexifi­cation de l’architectu­re des applicatio­ns, les agents ne peuvent plus se contenter de remonter des métriques mais doivent également cartograph­ier l’arborescen­ce applicativ­e.
 ??  ?? Les moteurs d’intelligen­ce des outils D’APM détectent les anomalies et remontent à la racine de la dégradatio­n des performanc­es, ou du moins dressent la liste des principaux suspects.
Les moteurs d’intelligen­ce des outils D’APM détectent les anomalies et remontent à la racine de la dégradatio­n des performanc­es, ou du moins dressent la liste des principaux suspects.
 ??  ??

Newspapers in French

Newspapers from France