def _write(self, message): try: json_str = Message.to_json(message) self.sock.connect(self.socket_path) self._pack_and_send(json_str) except (socket.error, socket.timeout, TypeError): msg = Message.to_json(message) exc_type, exc_value, exc_tb = sys.exc_info() traceback.print_exception( exc_type, exc_value, exc_tb, file=sys.stderr) sys.stderr.write( "Unable to pass the message into socket.%s\n" % msg) finally: self.sock.close()
def _write(self, message): try: json_str = Message.to_json(message) self.sock.connect(self.socket_path) self._pack_and_send(json_str) except (socket.error, socket.timeout, TypeError): msg = Message.to_json(message) exc_type, exc_value, exc_tb = sys.exc_info() traceback.print_exception( exc_type, exc_value, exc_tb, file=sys.stderr) sys.stderr.write( "Unable to pass the message into socket.%s\n" % msg) finally: self.sock.close()
def push_operation(self): NS._int.wclient.write("/messages/jobs/%s" % self.message.job_id, Message.to_json(self.message), append=True) NS._int.client.refresh("/messages/jobs/%s" % self.message.job_id, ttl=NS.config.data['message_retention_time']) log_message = ("%s:%s") % (self.message.job_id, self.message.payload["message"]) return log_message
def push_operation(self): tendrl_ns.etcd_orm.client.write( self.message.request_id, Message.to_json(self.message), append=True) log_message = ("%s:%s") % ( self.message.request_id, self.message.payload["message"]) return log_message
def push_operation(self): etcd_utils.write( "/messages/jobs/%s" % self.message.job_id, Message.to_json(self.message), append=True) etcd_utils.refresh( "/messages/jobs/%s" % self.message.job_id, ttl=NS.config.data['message_retention_time'] ) log_message = ("%s:%s") % ( self.message.job_id, self.message.payload["message"]) return log_message
def _logger(self, log_message): # Invalid message if isinstance(log_message, Message): log_message = Message.to_json(log_message) message = "%s - %s - %s:%s - %s - %s - %s" % ( self.message.timestamp, self.message.publisher, self.message.caller["filename"], self.message.caller["line_no"], self.message.caller["function"], self.message.priority.upper(), log_message) try: method = getattr(LOG, Logger.logger_priorities[self.message.priority]) except AttributeError: raise NotImplementedError(self.message.priority) method(message)
def __init__(self, message, socket_path=None): if message.publisher == "node_agent": try: json_str = Message.to_json(message) message = Message.from_json(json_str) Logger(message) except (TypeError, ValueError, KeyError, AttributeError): sys.stderr.write( "Unable to log the message.%s\n" % message) exc_type, exc_value, exc_tb = sys.exc_info() traceback.print_exception( exc_type, exc_value, exc_tb, file=sys.stderr) else: self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) self.socket_path = socket_path if self.socket_path is None: self.socket_path = NS.config.data['logging_socket_path'] self._write(message)
def _logger(self, log_message): # Invalid message if isinstance(log_message, Message): log_message = Message.to_json(log_message) message = "%s - %s - %s:%s - %s - %s - %s" % ( self.message.timestamp, self.message.publisher, self.message.caller["filename"], self.message.caller["line_no"], self.message.caller["function"], self.message.priority.upper(), log_message ) try: method = getattr( LOG, Logger.logger_priorities[self.message.priority]) except AttributeError: raise NotImplementedError(self.message.priority) method(message)
def __init__(self, message, socket_path=None): # node_agent log messages other than notice # priority are directly pushed into logger if message.publisher == "node_agent" and \ message.priority != "notice": try: json_str = Message.to_json(message) message = Message.from_json(json_str) Logger(message) except (TypeError, ValueError, KeyError, AttributeError): sys.stderr.write( "Unable to log the message.%s\n" % message) exc_type, exc_value, exc_tb = sys.exc_info() traceback.print_exception( exc_type, exc_value, exc_tb, file=sys.stderr) else: self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) self.socket_path = socket_path if self.socket_path is None: self.socket_path = NS.config.data['logging_socket_path'] self._write(message)
def test_to_json(): init() msg = Message("info", "node_context", payload={"message": "Test Message"}) message = Message.to_json(msg) assert message.find("info")