Página 1 de 2
[RESUELTO] Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 11 de agosto de 2022 - 10:18
por jlatieule
Hola,
he realizado cuatro intentos, todos con el mismo resultado. En cada ocasión, me veo obligado a restaurar el servidor a la instantánea anterior.
Estoy intentando actualizar desde la última versión Community a Discovery 2.2.
Todo parece funcionar correctamente, pero después de la actualización, ya no es posible autenticarse en la consola con la cuenta "admin".
He probado varias combinaciones:
- Postconfiguración: actualización de contraseña o sin actualización (para mantener la anterior).
- Actualización de la consola: con desinstalación completa o todo automatizado por el instalador de Windows.
WAPT está instalado en Debian 10.
¿Cómo puedo recuperar el control de la consola?
Atentamente
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 11 de agosto de 2022 - 14:23
por jlatieule
Acabo de intentar importar la base de datos PostgreSQL del servidor antiguo que estoy intentando actualizar con una instalación nueva.
Simplemente cargando la base de datos con la misma versión de WAPT, ya no es posible conectarse a la nueva instalación.
Probablemente ahí radica el problema.
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 12 de agosto de 2022 - 16:00
por sfonteneau
¿Puede proporcionar el número de versión de la base de datos disponible en la interfaz web?
Puedes probar una:
Código: Seleccionar todo
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()
Esto le permite volver a crear la cuenta de administrador con las ACL si no es una cuenta de administrador
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 12 de agosto de 2022 - 16:36
por jlatieule
Hola Simon, me alegro de verte aquí después de todos estos años en las TIC
A continuación se muestra la retroalimentación solicitada:
Estado base: OK (2.2.5.2)
Y después de ejecutar el código Python, aparece este mensaje de error:
Código: Seleccionar todo
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()
Entonces todavía tengo este problema de autenticación en la consola ;-/
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 17 de agosto de 2022 - 10:15
por sfonteneau
jlatieule escribió: ↑12 de agosto de 2022 - 16:36
Hola Simon, me alegra verte por aquí después de tantos años en el sector de las TIC.
Todavía aquí
Está bien, la base de datos está bloqueada en 2.2.5.2
El problema, por tanto, radica en el cambio de la versión 2.2.5.2 a la 2.2.6.0
En la última versión de wapt, la base es 2.2.6.1
El código es feo aquí porque en la línea 3083 de model.py tenemos:
Así que es poco probable que veamos el error...
Puede reemplazar el código en model.py en la línea 3083 con:
Código: Seleccionar todo
except:
import traceback
print(traceback.format_exc())
finally:
pass
Entonces puedes probar esto:
Código: Seleccionar todo
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)
Al menos veremos algo
Además, ¿qué versión de PostgreSQL tienes instalada?
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 17 de agosto de 2022 - 12:42
por jlatieule
De hecho, podemos ver más información.
Respecto a la versión de PostgreSQL:
postgres (PostgreSQL) 11.17 (Debian 11.17-0+deb10u1)
y el regreso de la actualización:
Código: Seleccionar todo
>>> 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.
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 17 de agosto de 2022 - 15:36
por sfonteneau
De acuerdo, hemos identificado el problema.
Veré si puedo lanzar una versión de desarrollo nocturna hoy mismo.
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 17 de agosto de 2022 - 15:44
por jlatieule
Genial, logré reportar un error
. ¿Necesito restaurar la versión 1.8.2 y volver a actualizar, o tendré que ejecutar un comando?
Re: Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 18 de agosto de 2022 - 18:01
por sfonteneau
Normalmente, una simple actualización será suficiente; la base de datos migrará correctamente con el nuevo código. ¿
Podrías probar con este?
https://wapt.tranquil.it/wapt/nightly/w ... 5-3fd94bd1
Simon
Re: [RESUELTO] Actualización de Discovery: Error al iniciar sesión en la consola
Publicado: 22 de agosto de 2022 - 17:16
por jlatieule
Gracias Simon,
busqué la dirección del repositorio de Debian en
https://wapt.tranquil.it/Debian/ pero estoy completamente desactualizado en este tema.
¿Cómo puedo instalar la versión nightly que me recomendaste?