refs #703 improve error reporting, fix bugs

pull/9/head
Natalia Serrano 2024-09-19 10:21:00 +02:00
parent 5b058a5e33
commit 7defe5cc63
1 changed files with 9 additions and 6 deletions

View File

@ -285,12 +285,16 @@ class ogAdmClientWorker (ServerWorker):
logger.debug ('subprocess.run ("{}", capture_output=True)'.format (proc))
p = subprocess.run (proc, capture_output=True)
if 0 != p.returncode:
raise Exception ('command failed') ## TODO mejorar este mensaje
cmd_txt = ' '.join (proc)
logger.error (f'command ({cmd_txt}) failed, stderr follows:')
for l in p.stderr.strip().decode ('utf-8').splitlines():
logger.error (f' {l}')
raise Exception (f'command ({cmd_txt}) failed, see log for details')
return p.stdout.strip().decode ('utf-8')
def tomaIPlocal (self):
try:
self.IPlocal = self.interfaceAdmin ('getIpAddress');
self.IPlocal = self.interfaceAdmin ('getIpAddress')
except Exception as e:
logger.error (e)
logger.error ('No se ha podido recuperar la dirección IP del cliente')
@ -471,8 +475,7 @@ class ogAdmClientWorker (ServerWorker):
if (not url): url = self.urlMenu
os.system ('pkill -9 browser');
#p = subprocess.Popen (['/opt/opengnsys/bin/browser', '-qws', url]) ## TODO
p = subprocess.Popen (['/usr/bin/xeyes'])
p = subprocess.Popen (['/opt/opengnsys/bin/browser', '-qws', url])
try:
p.wait (2) ## if the process dies before 2 seconds...
logger.error ('Error al ejecutar la llamada a la interface de administración')
@ -605,7 +608,7 @@ class ogAdmClientWorker (ServerWorker):
self.muestraMensaje (20)
else:
if not os.path.exists (sft_src):
raise Exception (f'interfaceAdmin({nfn}) returned success but did not create file ({sft_src}) under /tmp')
raise Exception (f'interfaceAdmin({nfn}) returned success but did not create file ({sft_src})')
sft_src_contents = Path (sft_src).read_bytes()
## Envía fichero de inventario al servidor
@ -681,7 +684,7 @@ class ogAdmClientWorker (ServerWorker):
output = self.interfaceAdmin (nfn, [dsk, par, nci, ipr])
self.muestraMensaje (9)
herror = 0
except Exception as e:
except:
logger.warning ('Error al ejecutar el comando')
self.muestraMensaje (10)
herror = 1