Exemplo n.º 1
0
class ClusterLogWatchHandler(ClusterControllerHandler):
    """
	日志实时输出
	"""
    def __init__(self, uid):
        ClusterControllerHandler.__init__(self, uid)

        self.watcher = LoggerWatcher()

    def do(self, receiveLogCB=None):
        self.queryAllInterfaces(MACHINES_ADDRESS, MACHINES_QUERY_ATTEMPT_COUNT,
                                MACHINES_QUERY_WAIT_TIME)

        infos = self.getComponentInfos(LOGGER_TYPE)
        if not infos:
            print("Error: no logger found!")
            return

        logger = None
        for info in infos:
            if info.uid == self.uid:
                logger = info
                break

        if not logger:
            print("Error: no logger found! (uid = %s)" % self.uid)
            return

        print("Logger found: internal %s:%s, external %s:%s" %
              (logger.intaddr, logger.intport, logger.extaddr, logger.extport))

        self.watcher.connect(logger.extaddr, logger.extport)
        self.watcher.registerToLogger(self.uid)

        def onReceivedLog(logs):
            for e in logs:
                print(e)

        if receiveLogCB is None:
            self.watcher.receiveLog(onReceivedLog, True)
        else:
            self.watcher.receiveLog(receiveLogCB, True)
Exemplo n.º 2
0
class ClusterLogWatchHandler(ClusterControllerHandler):
    """
	日志实时输出
	"""
    def __init__(self, uid):
        ClusterControllerHandler.__init__(self)

        self.watcher = LoggerWatcher()
        self.uid = uid

    def do(self):
        self.queryAllInterfaces()

        infos = self.getComponentInfos(LOGGER_TYPE)
        if not infos:
            print("Error: no logger found!")
            return

        logger = None
        for info in infos:
            if info.uid == self.uid:
                logger = info
                break

        if not logger:
            print("Error: no logger found! (uid = %s)" % self.uid)
            return

        print("Logger found: internal %s:%s, external %s:%s" %
              (logger.intaddr, logger.intport, logger.extaddr, logger.extport))

        self.watcher.connect(logger.extaddr, logger.extport)
        self.watcher.registerToLogger(self.uid)

        def onReceivedLog(logs):
            for e in logs:
                print(e)

        self.watcher.receiveLog(onReceivedLog, True)
Exemplo n.º 3
0
class ClusterLogWatchHandler(ClusterControllerHandler):
	"""
	日志实时输出
	"""
	def __init__(self, uid):
		ClusterControllerHandler.__init__(self)
		
		self.watcher = LoggerWatcher()
		self.uid = uid

	def do(self):
		self.queryAllInterfaces()
		
		infos = self.getComponentInfos( LOGGER_TYPE )
		if not infos:
			print( "Error: no logger found!" )
			return
		
		logger = None
		for info in infos:
			if info.uid == self.uid:
				logger = info
				break
		
		if not logger:
			print( "Error: no logger found! (uid = %s)" % self.uid )
			return
		
		print( "Logger found: internal %s:%s, external %s:%s" % ( logger.intaddr, logger.intport, logger.extaddr, logger.extport ) )
		
		self.watcher.connect( logger.extaddr, logger.extport )
		self.watcher.registerToLogger( self.uid )
		
		def onReceivedLog( logs ):
			for e in logs:
				print( e )
		
		self.watcher.receiveLog(onReceivedLog, True)