gestion du message de vie vers le processus KineIntercom
This commit is contained in:
+10
-1
@@ -23,7 +23,7 @@ import platform
|
||||
import psutil
|
||||
|
||||
from werkzeug.exceptions import HTTPException
|
||||
from ConfBack.manager import Sock
|
||||
from ConfBack.manager import Sock, TimeoutError
|
||||
|
||||
#########################################################
|
||||
# Class et Methods #
|
||||
@@ -121,12 +121,21 @@ def is_alive():
|
||||
current_app.logger.error("impossible de se connecter au serveur")
|
||||
abort(status.HTTP_406_NOT_ACCEPTABLE, description="Impossible de se connecter au serveur")
|
||||
|
||||
current_app.logger.info("envoie de la demande de message de vie ...")
|
||||
# send order to KineIntercom process
|
||||
if not conn.send(b"ALIVE\n"):
|
||||
conn.disconnect()
|
||||
current_app.logger.error("impossible de communiquer avec le serveur")
|
||||
abort(status.HTTP_406_NOT_ACCEPTABLE, description="Impossible de communiquer avec le serveur")
|
||||
|
||||
try:
|
||||
datas = conn.recv_timeout(6, 10)
|
||||
if not datas.decode('utf-8').startswith('ALIVE'):
|
||||
logger.warning("message de vie non valide ...")
|
||||
ret = False
|
||||
except TimeoutError as e:
|
||||
current_app.logger.warning("Pas de message de vie de la part du processus KineIntercom")
|
||||
ret = False
|
||||
conn.disconnect()
|
||||
|
||||
content = {'alive':ret}
|
||||
|
||||
Reference in New Issue
Block a user