def after_request(response): """Tracage des requetes URL.""" # Cela évite la duplication du registre dans le journal, # puisque ce 500 est déjà connecté via @app.errorhandler. if (response.status_code != 500 and not request.full_path.startswith('/static') # and cfg._ENV[cfg._ENVIRONNEMENT]["LOG_WATCHER"] is True ): # Construction du Message text = "{} :: {} :: {} :: {} :: {} :: {} :: {} :: {}".format( request.remote_addr, Session.getUserDisplay() if Session.getUserDisplay() is not None else "", Session.getUserId() if Session.getUserId() is not None else "", request.method, request.scheme, request.full_path, response.status, '1' if Utils.isAjaxRequest(request) else '0') # Enregistrement # loggerWatch.info(text) """ file_object = open(cfg._ENV[cfg._ENVIRONNEMENT]["LOG_WATCHER_FILE"], "a+") file_object.write("{} :: {} :: {} :: {} :: {} :: {} :: {} :: {}\n".format( datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f'), request.remote_addr, Session.getUserDisplay() if Session.getUserDisplay() is not None else "", Session.getUserId() if Session.getUserId() is not None else "", request.method, request.scheme, request.full_path, response.status )) file_object.close() """ return response
def exceptions(e): """ logger = Logger() logger.pid = Session.getPid() logger.user = Session.getUserDisplay() # ---------------------------------------------------- # Trace dans l'activité d'une erreur dans activity.log logger.error('{APP_NAME} à rencontré une erreur'.format(APP_NAME=cfg._APP_NAME)) # ---------------------------------------------------- # Trace de l'exception dans un fichier à part # import traceback # traceback.print_exc() logger.critical( nom=exc_type.__name__, message=str(exc_value), trace=exc_tb ) """ # Recuperation ERREUR et trace dans Activité exc_type, exc_value, exc_tb = sys.exc_info() # print(exc_value) # loggerAct.exception(e) # Renvoi Erreur if Utils.isAjaxRequest(request) is True: return Render.jsonTemplate( operation='OOPS !! Une erreur est arrivé', message='{MESSAGE}'.format(MESSAGE=exc_value), categorie="ERROR", code=500) return Render.htmlTemplate("errors/{}.html".format(str(500)), data=None, code=500)