public Server start(Logger logger) {
    try {
      Server server = startServer();
      if (server != null) {
        if (!server.isStarted()) {
          logger.error("Unable to start servlet server on {}", server.getURI());
        } else {
          descriptorsMap.values().forEach(descriptor -> logger.info("Started {} servlet on {}:{}",
                  descriptor.toString(),
                  descriptor.getPort(),
                  descriptor.getPath()));
        }
      }
      return server;
    } catch (Throwable throwable) {
      logger.error("Unable to start servlet server", throwable);
      return null;
    }
  }
Creates and starts the server.

@param logger a logger to output info
@return the server instance (or null if error)
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/ServletServerBuilder.java