Cet article explique pourquoi le lancement du module Connect en crontab unix peut poser problème.
Afin d’automatiser l’arrêt-relance du progiciel P5 on peut utiliser OPX Services Scheduler qui fonctionne sur toutes les plateformes. Sur les serveurs UNIX, on peut être amené à utiliser la fonctionnalité CRONTAB pour gérer les arrêt-relances de l’application (en particulier sur des environnements de test ou de recette).
Si l’on programme l’arrêt-relance de P5 dans la crontab de l’utilisateur « root » en exécutant les scripts d’arrêt-relance standard P5 « stop-opx2 » et « start_opx2 » on ne rencontrera pas de problème particulier.
En revanche si l’on choisit de lancer directement le script « start_opx2_connect » ou un script équivalent directement dans la crontab de l’utilisateur applicatif on rencontrera une erreur d’accès à la base de données dans les logs applicatifs et l’application ne démarrera pas (le chargement bouclera en erreur).
Lorsqu’on lance un traitement dans la crontab, l’environnement (.profile unix) de l’utilisateur n’est pas chargé par défaut. Or pour fonctionner correctement le module Connect doit connaitre les paramètres d’environnement liés à la base de données. Le module Connect sera bien lancé mais en l’absence de ces paramètres d’environnement chargés au démarrage du Connect la connexion à la BDD sera impossible.
Dans le cas où on lance les scripts « stop-opx2 » et « startopx2 » avec root il n’y a aucun problème puisque ce script contient la commande « su – _user_applicatif » qui va forcer le chargement du fichier .profile avant d’exécuter la commande.
La solution à ce problème consiste donc à rajouter dans le script unix qui lance le module Connect la commande
« . ./.profile » qui va permettre de forcer le chargement de l’environnement de l’utilisateur applicatif avant le lancement du module Connect.
Note : le chargement du .profile n’est pas nécessaire pour l’arrêt du Connect, seulement pour son lancement.
Découvrez la planche #13 !
Un système d'information en constante expansion, avec un nombre croissant d'applications, voit sa complexité augmenter, rendant la communication entre ses différentes applications un véritable défi. Pour surmonter ce problème, diverses solutions existent, telles que les agents de messages. Dans cet article, nous ferons un focus sur celui qui se démarque le plus, Apache Kafka. Bonne lecture !
Le code informatique tend à se complexifier, ce qui rend essentiel la création d’un code propre, ou "Clean Code", pour assurer la pérennité des systèmes et faciliter le travail en équipe sur un code source. Mais qu’est-ce qu’on entend vraiment par clean code ? C’est ce que nous allons voir dans cet article !