Esempio n. 1
0
    def setup(self):

        if self.mongod is None:
            self.mongod = MongoD(executable=self.mongod_executable,
                                 default_data_path=self.default_data_path,
                                 preserve_dbpath=self.preserve_dbpath,
                                 context=ExternalContext(logger=self.logger),
                                 **self.mongod_options)

        try:
            self.logger.info("Starting MongoDB server...\n%s" % self.mongod)

            self.mongod.start()

            self.logger.info(
                "MongoDB server started at %s:%s with pid %s." %
                (self.mongod.host, self.mongod.port, self.mongod.pid()))

            self.mongod.wait_for_client()

            self.logger.info(
                "MongoDB server at %s:%s successfully contacted." %
                (self.mongod.host, self.mongod.port))

            self.mongod.flush()

        except:
            self.logger.error("MongoDB server failed to start.", exc_info=True)
            raise
Esempio n. 2
0
    def setup(self):

        if self.master is None:

            self.master_options["master"] = ""

            self.master = MongoD(executable=self.mongod_executable,
                                 default_data_path=self.default_data_path,
                                 preserve_dbpath=self.preserve_dbpath,
                                 context=ExternalContext(logger=self.logger),
                                 **self.master_options)

        try:
            self.logger.info("Starting MongoDB master server...\n%s" %
                             self.master)

            self.master.start()

            self.logger.info(
                "MongoDB master server started at %s:%s with pid %s." %
                (self.master.host, self.master.port, self.master.pid()))

            self.master.wait_for_client()

            self.logger.info(
                "MongoDB master server at %s:%s successfully contacted." %
                (self.master.host, self.master.port))

            self.master.flush()

        except:
            self.logger.error("MongoDB master server failed to start.",
                              exc_info=True)
            raise

        if self.slave is None:

            self.slave_options["slave"] = ""
            self.slave_options["source"] = "%s:%s" % (self.master.host,
                                                      self.master.port)

            self.slave = MongoD(executable=self.mongod_executable,
                                default_data_path=self.default_data_path,
                                context=ExternalContext(logger=self.logger),
                                **self.slave_options)

        try:
            self.logger.info("Starting MongoDB slave server...\n%s" %
                             self.slave)

            self.slave.start()

            self.logger.info(
                "MongoDB slave server started at %s:%s with pid %s." %
                (self.slave.host, self.slave.port, self.slave.pid()))

            self.slave.wait_for_client()

            self.logger.info(
                "MongoDB slave server at %s:%s successfully contacted." %
                (self.slave.host, self.slave.port))

            self.slave.flush()

        except:
            self.logger.error("MongoDB slave server failed to start.",
                              exc_info=True)
            raise