def __init__(self, configuration, shouldConnectToZooKeeper=True): if configuration is None or not isinstance(configuration, EZConfiguration): raise Exception("Invalid configuration.") self.__ezConfiguration = configuration self.__applicationName = ApplicationConfiguration.fromConfiguration(configuration).getApplicationName() self.__securityConfiguration = SecurityConfiguration.fromConfiguration(configuration) self.__thriftConfiguration = ThriftConfiguration.fromConfiguration(configuration) # TODO: Add logging stuff here logging.basicConfig(filename="/tmp/py.log", level=logging.DEBUG, format='%(asctime)s \t%(levelname)s: \t%(message)s\t') self.__log = logging.getLogger(__name__) self.__serviceMapLock = threading.RLock() self.__serviceMap = {} self.__connectionPool = {} self.__reverseLookup = {} print "Application name: " + self.__applicationName if self.__applicationName is None: self.__log.warn("No application name was found. Only common services will be discoverable.") # zookeeper stuff if shouldConnectToZooKeeper: ezdiscovery.connect('localhost:2181') try: self.__common_services = list(ezdiscovery.get_common_services()) except Exception: self.__log.error("Unable to get commone services") raise self.__refreshEndPoints() self.__refreshCommonEndPoints()
def setUp(self): super(ThriftControlPoolTest, self).setUp() #print ezdiscovery.zk ezdiscovery.zk = self.client config = EZConfiguration() applicationName = ApplicationConfiguration.fromConfiguration(config).getApplicationName() ezdiscovery.register_common_endpoint('common_service_one', 'localhost', 8080) ezdiscovery.register_common_endpoint('common_service_two', 'localhost', 8081) ezdiscovery.register_common_endpoint('common_service_three', 'localhost', 8082) ezdiscovery.register_common_endpoint('common_service_multi', '192.168.1.1', 6060 ) ezdiscovery.register_common_endpoint('common_service_multi', '192.168.1.2', 6161) ezdiscovery.register_endpoint(applicationName, "service_one", 'localhost', 8083) ezdiscovery.register_endpoint(applicationName, "service_two", 'localhost', 8084) ezdiscovery.register_endpoint(applicationName, "service_three", 'localhost', 8085) ezdiscovery.register_endpoint("NotThriftClientPool", "unknown_service_three", 'localhost', 8085) ezdiscovery.register_endpoint("NotThriftClientPool", "unknown_service_three", 'localhost', 8085) ezdiscovery.register_endpoint("NotThriftClientPool", "unknown_service_three", 'localhost', 8085) self.cp = ThriftClientPool(config, shouldConnectToZooKeeper = False)