Pure Logging improvements
This commit is contained in:
parent
b5ee20216e
commit
a8aa15974b
20
__init__.py
20
__init__.py
@ -291,6 +291,9 @@ class pure_json_protocol(object):
|
|||||||
self.__sid_name_dict__ = {}
|
self.__sid_name_dict__ = {}
|
||||||
self.__did_name_dict__ = {}
|
self.__did_name_dict__ = {}
|
||||||
#
|
#
|
||||||
|
self.__callbacks__ = _callback_storage(channel_name, self.__log_prefix__)
|
||||||
|
self.__init_channel_name__(channel_name)
|
||||||
|
#
|
||||||
self.__status_name_dict = {}
|
self.__status_name_dict = {}
|
||||||
self.add_status(STATUS_OKAY, 'okay')
|
self.add_status(STATUS_OKAY, 'okay')
|
||||||
self.add_status(STATUS_BUFFERING_UNHANDLED_REQUEST, 'no callback for service, data buffered')
|
self.add_status(STATUS_BUFFERING_UNHANDLED_REQUEST, 'no callback for service, data buffered')
|
||||||
@ -300,9 +303,6 @@ class pure_json_protocol(object):
|
|||||||
self.add_status(STATUS_CHECKSUM_ERROR, 'checksum error')
|
self.add_status(STATUS_CHECKSUM_ERROR, 'checksum error')
|
||||||
self.add_status(STATUS_OPERATION_NOT_PERMITTED, 'operation not permitted')
|
self.add_status(STATUS_OPERATION_NOT_PERMITTED, 'operation not permitted')
|
||||||
#
|
#
|
||||||
self.__callbacks__ = _callback_storage(channel_name, self.__log_prefix__)
|
|
||||||
self.__init_channel_name__(channel_name)
|
|
||||||
#
|
|
||||||
self.__clean_receive_buffer__()
|
self.__clean_receive_buffer__()
|
||||||
|
|
||||||
self.add_service(SID_AUTH_REQUEST, SID_AUTH_RESPONSE, 'authentification request', 'authentification response')
|
self.add_service(SID_AUTH_REQUEST, SID_AUTH_RESPONSE, 'authentification request', 'authentification response')
|
||||||
@ -334,7 +334,7 @@ class pure_json_protocol(object):
|
|||||||
self.__comm_inst__.register_callback(self.__data_available_callback__)
|
self.__comm_inst__.register_callback(self.__data_available_callback__)
|
||||||
self.__comm_inst__.register_connect_callback(self.__connection_established__)
|
self.__comm_inst__.register_connect_callback(self.__connection_established__)
|
||||||
self.__comm_inst__.register_disconnect_callback(self.__authentification_state_reset__)
|
self.__comm_inst__.register_disconnect_callback(self.__authentification_state_reset__)
|
||||||
logger.info('%s Initialisation finished.', self.__log_prefix__())
|
self.logger.info('%s Initialisation finished.', self.__log_prefix__())
|
||||||
|
|
||||||
def __analyse_frame__(self, frame):
|
def __analyse_frame__(self, frame):
|
||||||
if sys.version_info >= (3, 0):
|
if sys.version_info >= (3, 0):
|
||||||
@ -491,7 +491,7 @@ class pure_json_protocol(object):
|
|||||||
try:
|
try:
|
||||||
status, data = callback(msg, *args, **kwargs)
|
status, data = callback(msg, *args, **kwargs)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error('{lp} Exception raised. Check callback {callback_name}: "{message}" and it\'s return values for {msg_info}'.format(lp=self.__log_prefix__(), callback_name=callback.__name__, message=str(e), msg_info=self.__get_message_name__(msg.get_service_id(), msg.get_data_id())))
|
self.logger.error('{lp} Exception raised. Check callback {callback_name}: "{message}" and it\'s return values for {msg_info}'.format(lp=self.__log_prefix__(), callback_name=callback.__name__, message=str(e), msg_info=self.__get_message_name__(msg.get_service_id(), msg.get_data_id())))
|
||||||
status = STATUS_CALLBACK_ERROR
|
status = STATUS_CALLBACK_ERROR
|
||||||
data = None
|
data = None
|
||||||
else:
|
else:
|
||||||
@ -505,7 +505,7 @@ class pure_json_protocol(object):
|
|||||||
try:
|
try:
|
||||||
callback(msg, *args, **kwargs)
|
callback(msg, *args, **kwargs)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error('{lp} Exception raised. Check callback {callback_name}: "{message}" for {msg_info}'.format(lp=self.__log_prefix__(), callback_name=callback.__name__, message=str(e), msg_info=self.__get_message_name__(msg.get_service_id(), msg.get_data_id())))
|
self.logger.error('{lp} Exception raised. Check callback {callback_name}: "{message}" for {msg_info}'.format(lp=self.__log_prefix__(), callback_name=callback.__name__, message=str(e), msg_info=self.__get_message_name__(msg.get_service_id(), msg.get_data_id())))
|
||||||
return # No response needed
|
return # No response needed
|
||||||
self.send(self.__sid_response_dict__[msg.get_service_id()], msg.get_data_id(), data, status=status)
|
self.send(self.__sid_response_dict__[msg.get_service_id()], msg.get_data_id(), data, status=status)
|
||||||
|
|
||||||
@ -568,7 +568,7 @@ class pure_json_protocol(object):
|
|||||||
if service_id not in self.__auth_whitelist__:
|
if service_id not in self.__auth_whitelist__:
|
||||||
self.__auth_whitelist__[service_id] = []
|
self.__auth_whitelist__[service_id] = []
|
||||||
self.__auth_whitelist__[service_id].append(data_id)
|
self.__auth_whitelist__[service_id].append(data_id)
|
||||||
logger.debug('%s Adding Message (%s) to the authentification whitelist', self.__log_prefix__(), self.__get_message_name__(service_id, data_id))
|
self.logger.debug('%s Adding Message (%s) to the authentification whitelist', self.__log_prefix__(), self.__get_message_name__(service_id, data_id))
|
||||||
|
|
||||||
def add_service(self, req_sid, resp_sid, req_name=None, resp_name=None):
|
def add_service(self, req_sid, resp_sid, req_name=None, resp_name=None):
|
||||||
"""
|
"""
|
||||||
@ -580,10 +580,10 @@ class pure_json_protocol(object):
|
|||||||
:type resp_sid: int
|
:type resp_sid: int
|
||||||
"""
|
"""
|
||||||
if req_sid in self.__sid_response_dict__:
|
if req_sid in self.__sid_response_dict__:
|
||||||
logger.error('%s Service with Request-SID=%d and Response-SID=%d not added, because request SID is already registered', self.__log_prefix__(), req_sid, resp_sid)
|
self.logger.error('%s Service with Request-SID=%d and Response-SID=%d not added, because request SID is already registered', self.__log_prefix__(), req_sid, resp_sid)
|
||||||
raise RequestSidExistsError("Request for this Service is already registered")
|
raise RequestSidExistsError("Request for this Service is already registered")
|
||||||
elif resp_sid in self.__sid_response_dict__.values():
|
elif resp_sid in self.__sid_response_dict__.values():
|
||||||
logger.error('%s Service with Request-SID=%d and Response-SID=%d not added, because response SID is already registered', self.__log_prefix__(), req_sid, resp_sid)
|
self.logger.error('%s Service with Request-SID=%d and Response-SID=%d not added, because response SID is already registered', self.__log_prefix__(), req_sid, resp_sid)
|
||||||
raise ResponseSidExistsError("Response for this Service is already registered")
|
raise ResponseSidExistsError("Response for this Service is already registered")
|
||||||
else:
|
else:
|
||||||
self.__sid_response_dict__[req_sid] = resp_sid
|
self.__sid_response_dict__[req_sid] = resp_sid
|
||||||
@ -591,7 +591,7 @@ class pure_json_protocol(object):
|
|||||||
self.__sid_name_dict__[req_sid] = req_name
|
self.__sid_name_dict__[req_sid] = req_name
|
||||||
if resp_name is not None:
|
if resp_name is not None:
|
||||||
self.__sid_name_dict__[resp_sid] = resp_name
|
self.__sid_name_dict__[resp_sid] = resp_name
|
||||||
logger.debug('%s Adding Service with Request=%s and Response=%s', self.__log_prefix__(), req_name or repr(req_sid), resp_name or repr(resp_sid))
|
self.logger.debug('%s Adding Service with Request=%s and Response=%s', self.__log_prefix__(), req_name or repr(req_sid), resp_name or repr(resp_sid))
|
||||||
|
|
||||||
def add_status(self, status, name):
|
def add_status(self, status, name):
|
||||||
"""
|
"""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user