def send_crash(self, # all optional. # option 1: the success message. message=None, # (1) args={}, # (2) # option 2: the error message. error=None, # option 3: the response object. response=None, # save the message/error/response. save=False, # the active log level (int) (leave None to use self.log_level). log_level=None, # the required log level for when to print to console (leave None to use Response.log_level ; default: 0). required_log_level=Response.log_level, ): if log_level == None: log_level = self.log_level if isinstance(message, (str,String)): self.__response__ = Response.success(message, args, log_level=-1, save=False) msg = message elif isinstance(error, (str,String)): self.__response__ = Response.error(error, log_level=-1, save=False) msg = error elif isinstance(response, ResponseObject): self.__response__ = response if response["success"]: msg = response["message"] else: msg = response["error"] else: raise Exceptions.InvalidUsage("Define one of the following parameters: [message:str, error:str, response:ResponseObject].") self.__status__ = "crashed" if log_level >= required_log_level or save: Response.log(response=self.__response__, save=save, log_level=log_level, required_log_level=required_log_level) return self.__response__
def log(self, # option 1: # the message (#1 param). message=None, # option 2: # the error. error=None, # option 3: # the response dict (leave message None to use). response={}, # print the response as json. json=JSON, # optionals: # the active log level (leave None to use self.log_level). log_level=None, # the required log level for when printed to console. required_log_level=0, # save to log file. save=False, # save errors always (for options 2 & 3 only). save_errors=None, # the log mode (leave None for default). mode=None, ): if log_level == None: log_level = self.log_level return Response.log( # option 1: # the message (#1 param). message=message, # option 2: # the error. error=error, # option 3: # the response dict (leave message None to use). response=response, # print the response as json. json=json, # optionals: # the active log level. log_level=log_level, # the required log level for when printed to console (leave None to use self.log_level). required_log_level=required_log_level, # save to log file. save=save, # save errors always (for options 2 & 3 only). save_errors=save_errors, # the log mode (leave None for default). mode=mode, )