Article corédigé par Joan Lumia et Samir Kamlichi (Cellenza) & Florent Hilger et Sébastien Leroy (Squadra)

 

Avec l’avènement des solutions Cloud, des sujets de transformation digitale, des architectures hybrides, etc., la place ainsi que la criticité des plateformes d’intégration demeurent d’actualité. En effet, par nature, les plateformes d’intégration vont se positionner au centre du système d’information des entreprises et, de par ce positionnement, seront considérées comme très critiques pour le bon fonctionnement de l’entreprise.

Convaincue que les sujets de surveillance, d’analyses des KPIs ainsi que d’amélioration continue sont partie prenante du succès d’une plateforme d’intégration, Cellenza aborde ces sujets avec un point de vue 360.

 

Surveillances des API

 

Livre blanc Run Cellenza

 

Les APIs dans la plateforme d’intégration

 

Dans les plateformes d’intégration modernes, la place des APIs est devenue fondamentale. En effet, les projets de transformation digitale, d’APIsation ou encore le besoin d’ingérer des données au fil de l’eau font que le nombre d’APIs au sein des systèmes d’information ne cesse de croître.

Au sein de votre plateforme d’intégration, les APIs vont jouer :

  • soit le rôle de porte d’entrée : les partenaires sources vont pouvoir pousser de la donnée et/ou récupérer le statut de traitement de cette donnée ;
  • soit le rôle de porte de sortie : par le biais des APIs, les différents backends vont pouvoir restituer de la donnée (brute ou transformée) stockée dans leurs bases de données respectives.

Au vu de la criticité de ces composants, il est primordial d’adresser les sujets de surveillance, d’analyse et de Run de ces derniers dès les phases de conception de la plateforme.

D’un point de vue infrastructure, la surveillance des APIs dans Azure se réalise en 4 étapes :

  • Les métriques des APIs ;
  • Les alertes ;
  • Les journaux d’activité ;
  • Les journaux de ressources.

Pour les métriques des APIs, deux valeurs sont importantes : la capacité, qui aide au dimensionnement de l’API, et les demandes, qui permettent d’analyser le trafic qui y transite avec des remontées d’information permettant de cibler les points bloquants.

Les alertes vont se baser sur les métriques pour déclencher une action pouvant être de différentes sortes : email, sms, Push, appel.

Les journaux d’activité sont essentiels : ils permettent d’identifier rapidement « qui, quand, quoi ».

Enfin, les journaux de ressources sont principalement utilisés lors des sessions de debug. Ils permettent d’identifier les opérations effectuées sur les ressources Azure.

 

Mais il est également primordial d’aborder ces questions d’un point de vue fonctionnel et métier. En effet, grâce aux données issues des outils de surveillance, on va chercher à mesurer :

  • L’utilisation des APIs: quelles APIs sont utilisées ? Quelles volumétries de requêtes ?

Au-delà de ces éléments, on va également chercher à savoir qui consomme les APIs. En effet, certains clients de Cellenza sont très demandeurs d’être en mesure d’identifier finement les consommateurs d’une API pour, entre autres, être capables d’adresser des sujets comme la monétisation de leurs APIs et par extension de leur cœur de métier.

  • La disponibilité des APIs

Les APIs sont-elles up ou down ? Au-delà de l’aspect technique, cette information intéresse fortement nos clients d’un point de vue métier également. En effet, l’idée ici est d’être capable en un coup d’œil d’identifier si les APIs critiques, au sens métier, sont disponibles ou non et de mesurer l’impact que cela peut avoir. Forts de ces informations, les décisionnaires seront capables d’évaluer l’effort et la criticité nécessaire à la résolution du dysfonctionnement.

  • L’adoption des APIs

Les KPIs mesurant l’activité des APIs seront également utilisés afin de mesurer le niveau d’adoption de ces dernières. Nos APIs sont-elles utilisées ? Rencontrent-elles leurs consommateurs ? Si oui, que pouvons-nous tirer de ces chiffres pour continuer à améliorer l’expérience APIs ? Si non, pourquoi ? La documentation des APIs est-elle à jour et pertinente ?

  • Les types d’erreurs rencontrées et leur fréquence

Combien d’erreurs la plateforme génère-t-elle ? Comment catégoriser ces erreurs ? S’agit-il d’erreurs techniques ou bien fonctionnelles inhérentes à la qualité des données reçues ? Il est important d’être en capacité de sortir des rapports traçant ce type d’information tout en gardant à l’esprit que l’amélioration continue est l’un des enjeux de la plateforme d’intégration moderne.

 

Pour aller plus loin, on pourra également s’appuyer sur des outils tels que les WorkBooks proposés par Azure ou Power BI afin de créer des dashboards capables de restituer toutes ces informations aux équipes en charge du Run :

 

Azure Workbook

Azure Workbook

 

La plateforme d’intégration moderne et ses composants

 

De la même façon, on va chercher à surveiller chaque composant de la plateforme d’intégration moderne : service Bus, Logic App, Data Factory, Azure Function, etc. Comme pour les APIs, on surveillera d’un point de vue infrastructure que tout est bien « up » mais également d’un point de vue métier afin de faciliter les prises de décisions et l’amélioration continue.

Par exemple, on pourra s’intéresser à nos Logic App qui permettent de créer des flux de travail distincts en fonction d’un élément ou d’un évènement.

En cas de difficulté, il est important de contrôler deux points :

  • Les historiques d’exécution, pour voir son statut d’exécution et identifier si l’une des étapes pose souci.
  • Les déclencheurs, qui permettent d’identifier si l’action a bien suivi son process.

Pour les alertes, il faut principalement en positionner sur les déclencheurs qui échouent : cela permet d’être rapidement informé et de corriger la situation dans un délai très court.

Autre exemple : on va tout particulièrement veiller au bon fonctionnement des Services Bus qui sont des « répartiteurs de message d’entreprise » entièrement managés et doivent, comme tout composant, faire l’objet d’une surveillance.

L’analyse des métriques est un premier pas afin d’estimer la charge du Service Bus. Afin de simplifier l’interprétation des journaux d’activité des Services Bus, il est conseillé d’utiliser les requêtes Kusto pour identifier des éléments de types :

  • Opération de gestion sur X jours
  • Journaux d’audit sur la dernière heure
  • Accès au coffre de clés
  • Erreur sur une période définie
  • Etc.

Il est également possible de générer des alertes sur ces remontées pour corriger au plus vite la situation.

L’important est que les équipes applicatives, Build et Run se parlent tout au long pour ajuster les métriques en permanence afin d’être les plus réactives possible.

 

Une solution de supervision fonctionnelle sur mesure : IntegrationCockpit

 

Pour compléter les 3 axes d’usage, de disponibilité et de performance pour une supervision à 360° d’une plateforme Intégration, nous proposons à nos client IntegrationCockpit, une solution de monitoring sur mesure réalisée par Cellenza, fruit des retours d’expérience de nos différents clients.

Proposée à nos clients sous forme d’accélérateur logiciel, cette solution  permet d’atteindre directement un niveau élevé de supervision fonctionnelle efficace et met en évidence trois problématiques majeures :

  • Orientée métier : avoir une vision commune, pour sortir du syndrome « boite noire » et valoriser le travail de la plateforme d’intégration.
  • Généralisée à tous les types d’échange d’une plateforme intégration, Azure integration Platform as a Service, BizTalk Server ou Hybrid.
  • Keep It Stupid Simple for Dev and Ops.

Pour répondre à ces trois problématiques, Cellenza a créé un méta-modèle de monitoring qui s’articule autour de 4 objets principaux :

  1. Functional Domain
  2. Business Object
  3. Partner App
  4. MetaData

 

Le schéma suivant représente une vue simplifiée du méta-modèle :

API méta-modèle de monitoring Cellenza

Les fonctionnalités d’IntegrationCockpit

 

IntegrationCockpit collecte les informations fonctionnelles, les modélise de manière exhaustive et les affiche dans l’IntegrationCockpit Portal. L’outil se charge également d’alerter en cas d’erreur ou de violation de SLA.

Ces fonctionnalités sont présentées en cinq onglets :

  1. Repository : pour définir et enregistrer les domaines fonctionnels, les objets métier, les applications partenaires et la gestion des droits d’accès aux utilisateurs. Cet onglet est accessible par les administrateurs.
  2. Audit : pour chercher les échanges avec des filtres.
  3. Alert Configuration : pour la configuration et la création des alertes basées sur l’interaction entière ou une partie d’échange fonctionnel d’une interaction.
  4. SLA Deviations : pour définir les alertes basées sur la durée  ou la période d’exécution.
  5. Error History : pour chercher les erreurs.

 

 

Fonctionnalités IntegrationCockpit outil ellenza gestion API

IntegrationCockpit Portal

 

Dans l’IntegrationCockpit Portal, on trouve l’onglet Dashboard. Ce dernier se compose de :

  • Graphiques présentant l’activité sur les derniers jours :
    • Graphe des échanges fonctionnels avec les différents statuts
    • Graphe des domaines fonctionnels avec les différents statuts
    • Graphe du nombre d’exécutions pour chaque échange fonctionnel
    • Graphe du nombre d’erreurs pour chaque échange fonctionnel

 

Intégration Cockpit Cellenza

 

 

  • Tableaux synthétiques :
    • Tableau des échanges fonctionnels avec le nombre d’exécutions total et le nombre d’exécutions en erreurs
    • Tableau des erreurs générées au cours des dernières 24 heures
    • Tableau des violations SLA au cours des dernières 24 heures

 

Intégration Cockpit surveillance API Cellenza

 

  • Critères de recherche : nous pourrions rechercher les échanges :
    • Par domaine fonctionnel
    • Par échange fonctionnel
    • Par statut
    • Par date
    • Possibilité de sauvegarder les critères de recherche sélectionnés (sauf la date)

 

  • Grille des résultats par :
    • Domaine fonctionnel
    • Echange fonctionnel
    • Statut
    • Date de début et date de fin
    • Lien vers le détail de l’échange fonctionnel

 

Audit API intégration cockpit Cellenza

 

  • Détails de l’échange fonctionnel

 

Intégration Cockpit echange d'informations

 

  • Alertes en cas d’erreurs: envoi d’une alerte par mail en cas d’erreurs sur les échanges fonctionnels sur lesquels l’utilisateur est abonné.

 

  • Alertes en cas de violations de SLA: envoi d’une alerte par mail en cas de violation SLA sur les échanges fonctionnels sur lesquels l’utilisateur est abonné.

 

Cellenza Intégration Cockpit Surveillance API alerte

 

  • Rapports d’exécution : envoi par mail d’un rapport (fichier CSV avec l’ensemble des lignes) sur les exécutions passées la veille sur les échanges fonctionnels sur lesquels l’utilisateur est abonné.

 

Supervision d’une plateforme d’intégration moderne : l’essentiel à retenir

 

Comme tout composant identifié comme critique des systèmes d’information, il faut porter une attention toute particulière à la supervision de sa plateforme d’intégration moderne. On s’efforcera de surveiller nos composants d’un point de vue infrastructure : les bases et services sont-ils en service ? Sont-ils accessibles ? Fonctionnels ? Mais également d’un point de vue fonctionnel : quel est le statut de ma commande XV324 ? Quel est l’état de mes flux ? Pourquoi rencontre-t-on telle erreur ?

Dans cette optique, Cellenza a fait le choix d’aller plus loin et de proposer sa propre solution de surveillance, enrichie de l’expertise et des expériences de ses experts intégration : IntegrationCockpit. Pour en savoir plus sur cette solution, n’hésitez pas à contacter Cellenza.

Squadra, spécialiste du Run, rappelle également l’importance d’inclure ces questions dès les premières phases de conception de la plateforme ainsi que de la communication entre les équipes applicatives, de Build et de Run, afin d’ajuster les métriques en continue et être ainsi toujours plus réactif.

 

Livre blanc Run Cellenza

 

Pour aller plus loin sur le sujet, nous vous invitons à consulter l’ensemble de nos articles du Mois du Run rédigés en partenariat avec Squadra :

 

Article corédigé par Joan Lumia et Samir Kamlichi (Cellenza) & Florent Hilger et Sébastien Leroy (Squadra)