Découvrez CPI Logs Analyzer (Beta)

Traitement en cours…
Terminé ! Vous figurez dans la liste.

Le but de cet article est de vous présenter un outil développé par Abapeur.fr : CPI Logs Analyser (Beta)

Cet outil, à intégrer dans votre système SAP On-Premise ou Private Cloud Edition (BTP, ABAP Environment et S/4 Hana Cloud ne sont pas compatibles pour le moment), permet de définir des responsables d’iflows créés sur CPI, et de les notifier par email en cas d’erreurs de ces derniers.

A noter :

  • Il existe déjà des solutions disponibles pour monitorer par email les iflows tombés en erreurs, mais ici nous proposons une gestion plus globale des erreurs (Pas besoin de configurer chaque iflows) en utilisant les APIs SAP Cloud Integration.
  • Nous utilisons un système SAP mais vous pourriez développer une solution avec n’importe quel outil pouvant consommer les APIs, tel que Splunk par exemple.

1. Activation de l’application standard Custon Business Configuration

  • et définir un Business Catalog prenant en réfrence la tuile Custom Business Configuration disponible dans ce Technical Catalog :
  • Gérer les autorisation nécessaires

La tuile doit donc être maintenant visible

2. Importer le projet via ABAPGIT

Voici le projet a importer : https://gitlab.com/abapeur/CPI-Logs

Ce projet va installer tous les objets nécessaires à la configuration du monitoring et comprend notamment :

  • Les tables de maintenances pour ajouter les responsables d’iflows à notifier en cas d’erreur
  • Un programme à scheduler en arrière plan qui effectuera les appels APIs pour récupérer les messages en erreur et enverra les emails.

3. Configuration Technique

  • Ajouter les autorisations nécessaires pour pouvoir accéder et modifier la table ZI_TABLEINFOSFORCPIEMA
  • Sur BTP, créer une instance pour accéder aux API de logs CPI ( Plan : api )
  • En SM59 ajouter 2 connexions

SCPI_API_OAUTH permettant de récupérer le Bearer nécessaire pour l’oauth 2.

l’URL est présente dans le fichier de credentials de l’instance :

( Ajouter grant-type=client_credentials en fin d’url )

Puis ajouter le client_id et le client_secret

Penser a activer la connexion SSL et a ajouter les certificats en STRUST

SCPI_API_LOGS qui va appeler les API de CPI pour trouver les messages en statut « FAILED »

Host :

Pas besoin de user et password ici (sera géré dans le programme via le Bearer obtenu)

  • Enfin, programmer a interval de temps souhaité le programme z_email_errors_cpi. Si on souhaite vérifier toutes les 5 minutes les erreurs par exemple, programmer toutes les 5min.

URL : Url de votre instance Integration Suite

EMAIL : Correspond au Sender qui envoie les messages d’erreur

  • Activer le service OData V4 ZUI_TABLEINFOSFORCPIEMA_O4

4. Configuration Fonctionnelle

Une fois tous les réglages techniques effectués, la solution est prête ! Il ne reste plus qu’a ajouter les responsables de iflows pour qu’ils soient notifiés.

  • Accéder à l’application « Custom Business Configurations » ( Application F4579 )
  • Sélectionner la ligne « Table infos for cpi emails »
  • Renseigner le package qu’on souhaite monitorer et l’e-mail de la personne responsable ( Il est possible de mettre une liste de diffusion ou plusieurs personnes responsable en créant plusieurs lignes )

Le nom du package est visible dans CPI :

  • Le champ “ Last Search in CPI “ permet de récupérer toutes les erreurs arrivées depuis cette date/heure. A la création d’une nouvelle entrée, si non renseignée, elle prend la date et l’heure de création de la ligne. C’est également possible de la changer manuellement en cas de problème pour rejouer les vérifications.
  • Modifiable directement en Prod, pas besoin de transporter depuis la DEV

La configuration est terminée !

5. Réception des emails

Une fois l’email d’erreur reçu :

  • Le titre contient le nom du iflow

  • Chaque ligne de l’email contient un lien qui renvoie vers CPI pour avoir le descriptif de l’erreur

En accédant au lien, on arrive sur CPI sur le descriptif de l’erreur.

A noter : La solution utilise pour le moment la gestion d’email configurée avec SAPConnect via SCOT. Il faut donc s’assurer que vous avez bien un serveur Mail configuré :

Conclusion

Voici une solution permettant de monitorer les erreurs d’iflows via l’envoi d’email.

Il s’agit d’une solution Beta. En cas d’erreur/problèmes vous pouvez nous les remonter via le Formulaire de Contact.

Les prochaines amélioration a venir ( Cloud Compliant ):

  • Suppression du programme z_email_errors_cpi pour le remplacer par la solution application jobs.
  • Utiliser ABAP Cloud pour l’envoi des Emails ( exemple ici pour On-Premise et Private Cloud et ici pour Public Cloud et BTP, ABAP Environment ).
  • Utiliser ABAP Cloud pour les connexions HTTP.

Une fois ces améliorations effectuées, le but est d’avoir une version disponible pour les systemes S/4 Hana Cloud et BTP, ABAP Environement.