accéder à la publication Cyril Grosjean · Nov 20, 2023 Merci, j'ai pas encore eu le temps d'essayer à nouveau pour le service snmpd, nous utilisons PRTG dans notre entreprise mais comme les messages en général d'InterSystems ne prennent pas en compte l'UTF-8, nous étions en train également de tester via une API pour savoir ce que l'on récupère mais aussi pour rendre plus lisible les informations.Le statut des productions par exemple c'est: Arrêté mais depuis le SNMP, InterSystems renvoie: "ArrÃ@tÃ@"
accéder à la publication Cyril Grosjean · Nov 20, 2023 Bonjour, Merci de votre réponse, je vais essayer de faire en sorte que le fichier de config snmpd soit similaire à celui que vous avez envoyé pour voir si cela corrige le problème, car actuellement lorsque je regarde le statut du service après l'avoir normalement lancé, il est toujours considéré comme inactif. Je reviens vers vous. Merci !
accéder à la publication Cyril Grosjean · Nov 15, 2023 En poursuivant les tests, j'ai ouvert en UDP les ports 161 et 162 sur le docker d'InterSystems. Cependant j'ai toujours ce problème de timeout. J'ai remarqué que j'avais cependant une erreur au bout d'environ 2 minutes après avoir activé le service monitor comme expliqué dans le post. Voici l'erreur : J'en déduis qu'il n'arrive pas à ouvrir en TCP le port 705, cependant ce port est précisé et est bien ouvert dans mon docker compose. Je suis donc bloqué. J'ai suivi ces informations sur la documentation d'InterSystems : https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls... Mais il est impossible pour moi de démarrer le service snmpd.
accéder à la publication Cyril Grosjean · Oct 31, 2023 Oui celle avec "Allow O/S authentication" et en cochant dans "%Service.Console" la case "Système d'exploitation". Je n'ai pas activé les droits Kerberos.
accéder à la publication Cyril Grosjean · Oct 31, 2023 Parfait ! Je suis connecté sans avoir à rentrer un username et un password au terminal, j'ai donc essayé de lancer la pipeline avec la commande runw pour avoir le script comme avant et tout fonctionne, la compilation s'est bien passée ! Merci beaucoup !
accéder à la publication Cyril Grosjean · Oct 31, 2023 Un simple saut à la ligne a réglé mon souci, le script marche mais je suis confronté à un autre souci: Le script n'est pas exécuté dans le job automatique sur Gitlab. Il y a un scp avant qui copie les fichiers contenus dans gitlab vers le serveur, puis la connexion ssh sur le screen. J'ai bien vérifié sur le serveur si les fichiers étaient compilés, mais ils ne le sont pas. J'ai mis des pauses dans le script pour être sûr qu'il ne s'agit pas d'un problème de temps mais ce n'est pas le cas.
accéder à la publication Cyril Grosjean · Oct 31, 2023 Je viens d'essayer, ça fonctionne cependant j'ai un petit soucis : Mon fichier inputs.txt contient ceci: Write "HI!" halt A savoir donc 2 lignes vides et les instructions. Je n'ai pas enlevé l'accès en non authentifié pour la console afin de ne pas avoir à rentrer d'identifiants dans un fichier brut car cela ne sera pas toléré par l'entreprise. Cependant, j'ai un problème sur l'output qui a l'air de faire n'importe quoi : Dans mon script compile.bat je n'ai rien de plus que la ligne irissession IRIS -U TEST < inputs.txt. Cela me force donc à forcer l'arrêt pour éviter que ma console crash (et de la redémarrer car le prompt crash, ça ressemble fortement à un core dump) Faut-il que ce script soit aussi encodé LF et non CRLF ? Est-ce qu'il manque une instruction pour éviter ce problème ?
accéder à la publication Cyril Grosjean · Oct 31, 2023 Merci pour l'information ! Nous allons en discuter pour faire une mise à jour.
accéder à la publication Cyril Grosjean · Oct 31, 2023 Malheureusement avec les modifications apportées, je suis toujours contraint à devoir entrer un nom d'utilisateur et un mot de passe (ne pas tenir compte de la saisie, ce ne sont pas les bons identifiants utilisés) EDIT: Je viens de remarquer qu'en faisant 2 fois entrée sans mettre un user et un password, j'étais bien dans le terminal iris, mais j'ai toujours cette demande d'input que je dois bypass sur la CI/CD sur une connexion ssh sur un serveur windows
accéder à la publication Cyril Grosjean · Oct 31, 2023 Bonjour @Lorenzo Scalese Merci pour cette approche. L'utilisateur est déjà activé, cependant, aucune permission ne lui est accordé, quelle permission doit-on lui donner pour qu'il puisse exécuter une routine depuis un terminal IRIS ? Cordialement
accéder à la publication Cyril Grosjean · Oct 11, 2023 Bonjour @Guillaume Rongier Alors j'ai deux namespaces mais j'ai 2 fichiers distincts ayant la même fonction: Class TEST.maclasse Extends %RegisteredObject { ClassMethod testPython() As %Status [ Language = python ] { print("Ok") } } ET Class SUPPLYCHAIN.maclasse Extends %RegisteredObject { ClassMethod testPython() As %Status [ Language = python ] { print("Ok") } } Ces fichiers étaient créés avant de lancer le docker pour lancer iris. Ce docker compile automatiquement les fichiers dans les bons namespaces (SUPPLYCHAIN est le dossier pour le namespace SUPPLY_CHAIN et TEST est le dossier pour le namespace TEST). Par la suite j'appelle via un terminal IRIS dans les bons namespaces, les méthodes: TEST>do ##class(TEST.maclasse).testPython() Ok ET SUPPLY_CHAIN>do ##class(SUPPLYCHAIN.maclasse).testPython() <OBJECT DISPATCH> *python object not found Après avoir posté ce matin ma question j'ai recherché de mon côté et il s'avère que lorsqu'on crée une nouvelle classe dans SUPPLY_CHAIN avec le même code et que je l'importe moi même, je retrouve ceci: SUPPLY_CHAIN>do ##class(SUPPLYCHAIN.test.maclasse).testPython() Ok Alors en effet, le fichier du côté SUPPLY_CHAIN a une fonction OnProcessInput en ObjectScript mais en faisant vraiment un copier/coller du fichier, l'appel à la fonction python marche parfaitement, mais sur le fichier d'origine j'ai toujours un python object not found, c'est là où je pense que c'est un bug En espérant vous avoir aidé à mieux comprendre, Cordialement
accéder à la publication Cyril Grosjean · Oct 11, 2023 Alors je viens de comprendre le problème, cependant je le trouve illogique. Je m'explique : Les classes ont été crées avec de l'ObjectScript par défaut, puis cloné depuis gitlab et compilé sur un docker-compose, le fichier n'inclus pas python, cependant, lorsque je crée un nouveau fichier avec un nom de classe différent mais pourtant avec le même code ET une fonction en python, ça marche. Je pense qu'il s'agit d'un bug
accéder à la publication Cyril Grosjean · Oct 11, 2023 Bonjour, Oui je change de namespace avant et le nom du package juste avant n'est plus TEST mais SUPPLYCHAIN : do ##class(SUPPLYCHAIN.maclasse).testPython() Sur le namespace TEST je l'appelle comme ceci : do ##class(TEST.maclasse).testPython() Evidemment, les deux fichiers existent et sont bien compilés
accéder à la publication Cyril Grosjean · Oct 10, 2023 Bonjour @Lorenzo Scalese Merci beaucoup, tout marche correctement !
accéder à la publication Cyril Grosjean · Oct 9, 2023 Bonjour @Lorenzo Scalese, Le problème de la commande iris runw c'est que nous allons éxecuter une classe dans un namespace, cependant, nous voulons à partir d'un script (ou de cette classe si c'est possible) compiler plusieurs fichiers cls provenant de répertoires précis sur la machine (pas importés dans InterSystems), dans des namespaces différents (plus d'une dizaine). Nous avons pas mal de difficultés sur la compréhension de l'éxecution d'un script, pouvez-vous nous fournir plus de détails concernant runw ou même un exemple afin qu'on puisse voir comment changer de namespace et compiler. Merci beaucoup ! Cyril PS : Pour le script il s'agit d'un script réalisé en suivant cette page de la documentation : https://docs.intersystems.com/irisforhealth20232/csp/docbook/DocBook.UI....
accéder à la publication Cyril Grosjean · Oct 3, 2023 Bonjour, @Lorenzo Scalese C'est ce qu'on cherchait, merci beaucoup c'est parfait ! Cordialement
accéder à la publication Cyril Grosjean · Oct 2, 2023 Bonjour @Lorenzo Scalese Merci pour votre réponse ! Malheureusement nous n'utilisons pas Studio, il me semble que c'est faisable via le portail directement mais nous ne savons plus comment procéder.