Ejemplo n.º 1
0
 def setUp(self):
     logger = logging.getLogger('queue')
     logger.addHandler(logging.NullHandler())
     self.patchers = [
         patch('hyclops.connector.ec2.EC2Connector.__new__'),
         patch('hyclops.connector.vsphere.VSphereConnector.__new__'),
         patch('hyclops.connector.ipmi.IPMIConnector.__new__'),
     ]
     for patcher in self.patchers:
         patcher.start()
     self.queue = MessageQueue(
         config=configobj.ConfigObj("test/conf/test.conf"))
Ejemplo n.º 2
0
    log_file = config["logging"]["log_file"]
    log_format = '[%(asctime)s] %(name)s (%(threadName)s) %(levelname)s: %(message)s'
    logging.basicConfig(filename=log_file,
                        level=logging.WARNING,
                        format=log_format)
    logger = logging.getLogger('hyclops')
    logger.setLevel(getattr(logging, log_level))

    # add environments
    for key, value in config["environments"].items():
        os.environ[key] = value

    # create queue
    listen_address = config["hyclops"]["listen_address"]
    listen_port = config["hyclops"]["listen_port"]
    queue = MessageQueue(config)
    try:
        queue.bind(listen_address, listen_port)
        logger.info("Message queue is opened")
    except Exception, e:
        err_msg = "Failed to bind ZeroMQ socket: %s" % str(e)
        logger.error(err_msg)
        sys.exit(err_msg)

    # polling loop
    while True:
        try:
            queue.poll()
            time.sleep(3)
        except (KeyboardInterrupt, SystemExit), e:
            queue.close()