def terminate(self, delete_logs):
        try:
            load_balancer_handle = self._get_load_balancer_handle()
            conn = boto.ec2.elb.connect_to_region(self.region, **self.aws_credentials)
            _logger.info("Deleting load balancer: %s" % load_balancer_handle.name)
            conn.delete_load_balancer(load_balancer_handle.name)
        except:
            _logger.error(
                "Could not delete load balancer. Please manually delete the following load "
                "balancer: %s" % self.load_balancer_dns_name
            )

        # Terminate all hosts
        try:
            host_ids = [i.id for i in load_balancer_handle.instances]
            _stop_instances(host_ids, self.region, credentials=self.aws_credentials)
        except:
            _logger.error("Could not terminate hosts. Please manually terminate from the AWS console.")

        if delete_logs:
            _logger.info("Deleting log files.")
            try:
                s3_recursive_delete(self.log_path, self.aws_credentials)
            except:
                _logger.info("Could not delete log file. Please manually delete files under: %s" % self.log_path)

        # Delete the server certificate
        if self.certificate_name:
            conn = boto.iam.connection.IAMConnection(**self.aws_credentials)
            conn.delete_server_cert(self.certificate_name)
    def terminate(self, delete_logs):
        _logger.info("Terminating service.")
        try:
            if self.web_server:
                _logger.info("Terminating web server.")
                self.web_server.terminate()
        except:
            pass

        try:
            if self.graphlab_service:
                _logger.info("Terminating graphlab_service.")
                self.graphlab_service.terminate()
        except:
            pass

        try:
            if self.redis_manager:
                _logger.info("Terminating redis manager.")
                self.redis_manager.terminate()
        except:
            pass

        if delete_logs:
            _logger.info("Deleting log files.")
            try:
                s3_recursive_delete(self.log_path)
            except:
                _logger.info("Could not delete log file. Please manually delete files under: %s" % self.log_path)