def test_success(self, mock_getMQParamsFromCS, mock_createMQConnector, mock_reconnect): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producer = result['Value'] result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.close() self.assertTrue(result['OK']) self.assertFalse(Test_MQProducers.reconnectWasCalled) result = producer.close() self.assertFalse(Test_MQProducers.reconnectWasCalled) for _ in range(20): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producer = result['Value'] result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.close() self.assertTrue(result['OK']) self.assertFalse(Test_MQProducers.reconnectWasCalled) time.sleep(3) self.assertFalse(Test_MQProducers.reconnectWasCalled)
def test_success(self, mock_getMQParamsFromCS, mock_createMQConnector, mock_reconnect): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producer = result['Value'] result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.close() self.assertTrue(result['OK']) self.assertFalse(Test_MQProducers.reconnectWasCalled) result = producer.close() self.assertFalse(Test_MQProducers.reconnectWasCalled) for _ in xrange(20): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producer = result['Value'] result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.close() self.assertTrue(result['OK']) self.assertFalse(Test_MQProducers.reconnectWasCalled) time.sleep(3) self.assertFalse(Test_MQProducers.reconnectWasCalled)
def test_success(self, mock_getMQParamsFromCS): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) conn1 = self.getFirstConnection('mardirac3.in2p3.fr') self.assertTrue(conn1.is_connected()) producer = result['Value'] result = producer.put('blabla') self.assertTrue(result['OK']) # correct permissions must be set. # stopServer() # self.assertFalse(conn1.is_connected()) # time.sleep(5) # startServer() # time.sleep(10) #this value will be timeout dependend so if it is to short it will fail. # self.assertTrue(conn1.is_connected()) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.close() self.assertTrue(result['OK']) self.assertFalse(conn1.is_connected()) result = producer._connectionManager.getAllMessengers() self.assertTrue(result['OK']) messengers = result['Value'] expected = [] self.assertEqual(sorted(messengers), sorted(expected))
def __createProducer(self): """ This method is used to create a producer """ mqProducer = None result = createProducer("Monitoring::Queue::%s" % self.__monitoringType) if not result['OK']: gLogger.warn("Fail to create Producer:", result['Message']) else: mqProducer = result['Value'] return mqProducer
def __init__(self, queue): """ Initialization of the MessageQueueHandler. :params queue: string representing the queue identifier in the configuration. example: "mardirac3.in2p3.fr::Queues::TestQueue" """ super(MessageQueueHandler, self).__init__() self.producer = None result = createProducer(queue) if result['OK']: self.producer = result['Value'] self.hostname = socket.gethostname()
def __createProducer(self): """ This method is used to create an MQ producer. Returns: MQProducer or None: """ mqProducer = None result = createProducer("Monitoring::Queue::%s" % self.__failoverQueueName) if not result['OK']: gLogger.warn("Fail to create Producer:", result['Message']) else: mqProducer = result['Value'] return mqProducer
def test_success(self, mock_getMQParamsFromCS): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producerFirst = result['Value'] conn1 = self.getFirstConnection('mardirac3.in2p3.fr') self.assertTrue(conn1.is_connected()) result = producerFirst.put('blabla') self.assertTrue(result['OK']) result = producerFirst.put('blabla') self.assertTrue(result['OK']) self.assertTrue(conn1.is_connected()) producers = [] for i in xrange(20): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producer = result['Value'] producers.append(producer) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producerFirst.close() self.assertTrue(result['OK']) self.assertTrue(conn1.is_connected()) time.sleep(3) self.assertTrue(conn1.is_connected()) for p in producers: result = p.close() self.assertTrue(result['OK']) self.assertFalse(conn1.is_connected())
def test_success(self, mock_getMQParamsFromCS): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producerFirst = result['Value'] conn1 = self.getFirstConnection('mardirac3.in2p3.fr') self.assertTrue(conn1.is_connected()) result = producerFirst.put('blabla') self.assertTrue(result['OK']) result = producerFirst.put('blabla') self.assertTrue(result['OK']) self.assertTrue(conn1.is_connected()) producers = [] for i in range(20): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producer = result['Value'] producers.append(producer) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producerFirst.close() self.assertTrue(result['OK']) self.assertTrue(conn1.is_connected()) time.sleep(3) self.assertTrue(conn1.is_connected()) for p in producers: result = p.close() self.assertTrue(result['OK']) self.assertFalse(conn1.is_connected())
def __init__(self, monitoringType=""): self.__maxRecordsInABundle = 5000 self.__documentLock = threading.RLock() self.__documents = [] self.__mq = False self.__monitoringType = None result = createProducer(monitoringType) if not result["OK"]: gLogger.warn("Fail to create Producer:", result["Message"]) else: self.__mqProducer = result["Value"] self.__mq = True self.__monitoringType = monitoringType
def __init__(self, monitoringType=''): self.__maxRecordsInABundle = 5000 self.__documentLock = threading.RLock() self.__documents = [] self.__mq = False self.__monitoringType = None result = createProducer(monitoringType) if not result['OK']: gLogger.warn("Fail to create Producer:", result['Message']) else: self.__mqProducer = result['Value'] self.__mq = True self.__monitoringType = monitoringType
def __init__(self, queue): """ Initialization of the MessageQueueHandler. :param queue: queue identifier in the configuration. example: "mardirac3.in2p3.fr::Queues::TestQueue" """ super(MessageQueueHandler, self).__init__() self.producer = None result = createProducer(queue) if result["OK"]: self.producer = result["Value"] else: # print because logging not available print("ERROR initializing MessageQueueHandler: %s" % result) self.hostname = socket.gethostname()
def __createProducer(self): """ This method is used to create an MQ producer. Returns: MQProducer or None: """ mqProducer = None result = gConfig.getConfigurationTree('/Resources/MQServices') if result['OK']: result = createProducer("Monitoring::Queues::%s" % self.__failoverQueueName) if not result['OK']: gLogger.error("Fail to create Producer:", result['Message']) else: mqProducer = result['Value'] else: gLogger.warn("No MQ setup for Monitoring in CS. You are running Monitoring without failover:", result['Message']) return mqProducer
def __init__(self, monitoringType=''): self.__maxRecordsInABundle = 5000 self.__documentLock = threading.RLock() self.__documents = [] self.__mq = False self.__monitoringType = None #check the existence of a MQ retVal = getMQParamsFromCS(monitoringType) if retVal['OK']: result = createProducer(monitoringType) if not result['OK']: gLogger.warn("Fail to create Producer:", result['Message']) else: self.__mqProducer = result['Value'] self.__mq = True self.__monitoringType = monitoringType
def test_success(self, mock_getMQParamsFromCS): conn1 = None # creating and closing for i in range(20): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') if i == 1: conn1 = self.getFirstConnection('mardirac3.in2p3.fr') self.assertTrue(result['OK']) producer = result['Value'] result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.close() self.assertTrue(result['OK']) self.assertFalse(conn1.is_connected()) time.sleep(3) self.assertFalse(conn1.is_connected())
def test_success(self, mock_getMQParamsFromCS): conn1 = None # creating and closing for i in xrange(20): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') if i == 1: conn1 = self.getFirstConnection('mardirac3.in2p3.fr') self.assertTrue(result['OK']) producer = result['Value'] result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.close() self.assertTrue(result['OK']) self.assertFalse(conn1.is_connected()) time.sleep(3) self.assertFalse(conn1.is_connected())
def test_success(self, mock_getMQParamsFromCS): result = createProducer(mqURI='mardirac3.in2p3.fr::Queue::test1') self.assertTrue(result['OK']) producer = result['Value'] conn1 = self.getFirstConnection('mardirac3.in2p3.fr') self.assertTrue(conn1.is_connected()) result = producer.put('blabla') self.assertTrue(result['OK']) result = producer.put('blabla') self.assertTrue(result['OK']) self.assertTrue(conn1.is_connected()) result = producer.close() self.assertTrue(result['OK']) result = producer._connectionManager.getAllMessengers() self.assertTrue(result['OK']) messengers = result['Value'] expected = [] self.assertEqual(sorted(messengers), sorted(expected)) self.assertFalse(conn1.is_connected())