[RESOLU] MaJ vers Discovery : Erreur lors du login sur la console

Share here your tips or issues concerning WAPT Console or WAPT Agent / Venez ici partager vos problèmes et astuces concernants la console et l'agent WAPT
Règles du forum
Règles du forum communautaire
* English support on www.reddit.com/r/wapt
* Le support communautaire en français se fait sur ce forum
* Merci de préfixer le titre du topic par [RESOLU] s'il est résolu.
* Merci de ne pas modifier un topic qui est taggé [RESOLU]. Ouvrez un nouveau topic en référençant l'ancien
* Préciser version de WAPT installée, version complète ET numéro de build (2.2.1.11957 / 2.2.2.12337 / etc.) AINSI QUE l'édition Enterprise / Discovery
* Les versions 1.8.2 et antérieures ne sont plus maintenues. Les seules questions acceptées vis à vis de la version 1.8.2 sont liés à la mise à jour vers une version supportée (2.1, 2.2, etc.)
* Préciser OS du serveur (Linux / Windows) et version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019)
* Préciser OS de la machine d'administration/création des paquets et de la machine avec l'agent qui pose problème le cas échéant (Windows 7 / 10 / 11 / Debian 11 / etc.)
* Eviter de poser plusieurs questions lors de l'ouverture de topic, sinon il risque d'être ignorer. Si plusieurs sujet, ouvrir plusieurs topic, et de préférence les uns après les autres et pas tous en même temps (ie ne pas spammer le forum).
* Inclure directement les morceaux de code, les captures d'écran et autres images directement dans le post. Les liens vers les pastebin, les bitly et autres sites tierces seront systématiquement supprimés.
* Comme tout forum communautaire, le support est fait bénévolement par les membres. Si vous avez besoin d'un support commercial, vous pouvez contacter le service commercial Tranquil IT au 02.40.97.57.55
jlatieule
Messages : 38
Inscription : 03 juil. 2019 - 09:18

11 août 2022 - 10:18

Bonjour,


Cela fait 4 tentatives qui se soldent pas le même résultat. A chaque fois je suis contraint de restaurer le serveur sur le snapshot précédent
Je tente de mettre à jour de la dernière version de Community vers la Discovery 2.2

Tout semble fonctionner correctement mais après la mise à jour, il n'est plus possible de s'authentifier sur la console avec le compte "admin"
J'ai tenté plusieurs combinaisons :
- Post-configuration : MaJ du mot de passe ou Aucune mise à jour (pour conserver l'ancien)
- MaJ de la console : avec désinstallation complète ou tout automatisé par l'installateur windows

WAPT est installé sur une Debian 10

Comment puis-je reprendre la main sur la console ?

Cordialement
Technicien informatique chez Domitia Habitat
jlatieule
Messages : 38
Inscription : 03 juil. 2019 - 09:18

11 août 2022 - 14:23

Je viens de faire un essais en important la base postgre de l'ancien serveur que je tente de mettre à niveau avec une nouvelle installation from scratch

Uniquement en chargeant la base de donnée avec la même version de wapt, il n'est plus possible de se connecter sur la nouvelle installation

Il est probable que le problème vienne de là
Technicien informatique chez Domitia Habitat
Avatar de l’utilisateur
sfonteneau
Expert WAPT
Messages : 1783
Inscription : 10 juil. 2014 - 23:52
Contact :

12 août 2022 - 16:00

Vous pouvez donner le numéro de version de la base de donnée dispo sur l'interface web ?

Vous pouvez tenter un :

Code : Tout sélectionner

sudo -u wapt /opt/wapt/waptpython.sh

Code : Tout sélectionner

from waptserver.config import load_config
from waptserver.model import *
conf = waptserver.config.load_config('/opt/wapt/conf/waptserver.ini')
load_db_config(conf)
create_default_users(conf)
quit()
ça permet de recréer admin avec les acl si il n'est pas admin
jlatieule
Messages : 38
Inscription : 03 juil. 2019 - 09:18

12 août 2022 - 16:36

Salut Simon, content de te retrouver ici après ces années de TICE ;-)

Voici le retour demandé :
Statut de la base : OK (2.2.5.2)

Et après avoir exécuter le code python j'ai ce retour avec une erreur :

Code : Tout sélectionner

administrateur@serv-wapt:~$ sudo -u wapt /opt/wapt/waptpython.sh
[sudo] password for administrateur: 
Python 3.8.13 (default, May 23 2022, 11:25:12) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from waptserver.config import load_config
>>> from waptserver.model import *
>>> conf = waptserver.config.load_config('/opt/wapt/conf/waptserver.ini')
>>> load_db_config(conf)
<playhouse.pool.PooledPostgresqlExtDatabase object at 0x7f7bb20678e0>
>>> create_default_users(conf)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/wapt/waptserver/model.py", line 1246, in create_default_users
    if created or not admin_acls.acls.get('admin'):
AttributeError: 'NoneType' object has no attribute 'get'
>>> quit()
J'ai donc toujours ce problème d'authentification sur la console ;-/
Technicien informatique chez Domitia Habitat
Avatar de l’utilisateur
sfonteneau
Expert WAPT
Messages : 1783
Inscription : 10 juil. 2014 - 23:52
Contact :

17 août 2022 - 10:15

jlatieule a écrit : 12 août 2022 - 16:36 Salut Simon, content de te retrouver ici après ces années de TICE ;-)
Toujours là ;)

Ok la base est bloquer en 2.2.5.2

Le problème est donc entre la bascule de 2.2.5.2 -> 2.2.6.0

Dans la dernière version de wapt la base est en 2.2.6.1


Le code un moche ici puisque a la ligne 3083 du model.py on a :

Code : Tout sélectionner

    
    finally:
        pass
 
On risque donc pas de voir l'erreur ...

tu peux remplace le code de model.py a la ligne 3083 par :

Code : Tout sélectionner

    except:
        import traceback
        print(traceback.format_exc())

    finally:
        pass



puis tu peux tenter un :

Code : Tout sélectionner

sudo -u wapt /opt/wapt/waptpython.sh

Code : Tout sélectionner

from waptserver.config import load_config
from waptserver.model import *
conf = waptserver.config.load_config('/opt/wapt/conf/waptserver.ini')
load_db_config(conf)
upgrade_db_structure(conf)
au moins on verra quelque chose

Également quel est ta version de postgresql installé ?
jlatieule
Messages : 38
Inscription : 03 juil. 2019 - 09:18

17 août 2022 - 12:42

En effet on vois plus d'informations.

Concernant la version de PostgreSQL :
postgres (PostgreSQL) 11.17 (Debian 11.17-0+deb10u1)
et le retour de la mise à niveau :

Code : Tout sélectionner

>>> from waptserver.config import load_config
>>> from waptserver.model import *
>>> conf = waptserver.config.load_config('/opt/wapt/conf/waptserver.ini')
>>> load_db_config(conf)
<playhouse.pool.PooledPostgresqlExtDatabase object at 0x7fc32e401940>
>>> upgrade_db_structure(conf)
Traceback (most recent call last):
  File "/opt/wapt/lib/python3.8/site-packages/peewee.py", line 3144, in execute_sql
    cursor.execute(sql, params or ())
psycopg2.errors.UndefinedFunction: function is_valid_jsonb(jsonb) does not exist
LINE 1: ...set value = to_jsonb(value::text)::text where not is_valid_j...
                                                             ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/wapt/waptserver/model.py", line 2987, in upgrade_db_structure
    wapt_db.execute_sql("""update hostauditdata set value = to_jsonb(value::text)::text where not is_valid_jsonb(value) and not is_valid_jsonb(replace(value,'''','"'));""")
  File "/opt/wapt/lib/python3.8/site-packages/peewee.py", line 3151, in execute_sql
    self.commit()
  File "/opt/wapt/lib/python3.8/site-packages/peewee.py", line 2917, in __exit__
    reraise(new_type, new_type(exc_value, *exc_args), traceback)
  File "/opt/wapt/lib/python3.8/site-packages/peewee.py", line 190, in reraise
    raise value.with_traceback(tb)
  File "/opt/wapt/lib/python3.8/site-packages/peewee.py", line 3144, in execute_sql
    cursor.execute(sql, params or ())
peewee.ProgrammingError: function is_valid_jsonb(jsonb) does not exist
LINE 1: ...set value = to_jsonb(value::text)::text where not is_valid_j...
                                                             ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.
Technicien informatique chez Domitia Habitat
Avatar de l’utilisateur
sfonteneau
Expert WAPT
Messages : 1783
Inscription : 10 juil. 2014 - 23:52
Contact :

17 août 2022 - 15:36

Ok problème identifier chez nous,

je vais voir pour pousser une nightly aujourd'hui
jlatieule
Messages : 38
Inscription : 03 juil. 2019 - 09:18

17 août 2022 - 15:44

Cool, j'ai réussi à remonter un bug

Est-ce que je doit restaurer la version 1.8.2 et refaire la mise à jour ou ce sera une commande à passer ?
Technicien informatique chez Domitia Habitat
Avatar de l’utilisateur
sfonteneau
Expert WAPT
Messages : 1783
Inscription : 10 juil. 2014 - 23:52
Contact :

18 août 2022 - 18:01

Normalement juste un upgrade suffira, la bdd va migrer correctement avec le nouveau code

Tu peux essayer celle-ci ?

https://wapt.tranquil.it/wapt/nightly/w ... 5-3fd94bd1

Simon
jlatieule
Messages : 38
Inscription : 03 juil. 2019 - 09:18

22 août 2022 - 17:16

Merci Simon,


J'ai recherché l'adresse du dépôt pour Debian depuis https://wapt.tranquil.it/Debian/ mais je suis complètement rouillé sur ce sujet

Comment puis-je installer la nightly que tu me propose ?
Technicien informatique chez Domitia Habitat
Verrouillé