def METHOD_NAME(endpoint,
          services,
          forseti_db_connect_string,
          config_file_path,
          log_level,
          enable_console_log,
          max_workers=32,
          wait_shutdown_secs=3):
    """Instantiate the services and serves them via gRPC.
    Args:
        endpoint (str): the server channel endpoint
        services (list): services to register on the server
        forseti_db_connect_string (str): Forseti database string
        config_file_path (str): Path to Forseti configuration file.
        log_level (str): Sets the threshold for Forseti's logger.
        enable_console_log (bool): Enable console logging.
        max_workers (int): maximum number of workers for the crawler
        wait_shutdown_secs (int): seconds to wait before shutdown
    Raises:
        Exception: No services to start
    """
    # Configuring log level for the application
    logger.set_logger_level_from_config(log_level)
    if enable_console_log:
        logger.enable_console_log()
    factories = []
    for service in services:
        factories.append(SERVICE_MAP[service])
    if not factories:
        raise Exception('No services to start.')
    # Server config service is always started.
    factories.append(SERVICE_MAP['server'])
    config = ServiceConfig(
        forseti_config_file_path=config_file_path,
        forseti_db_connect_string=forseti_db_connect_string,
        endpoint=endpoint)
    is_config_updated, error_msg = config.update_configuration()
    if not is_config_updated:
        update_config_msg = (
            'Please update the forseti_conf_server.yaml file on GCS '
            'and reset the server VM.')
        raise Exception(error_msg + ' ' + update_config_msg)
    server = grpc.server(futures.ThreadPoolExecutor(max_workers))
    for factory in factories:
        factory(config).create_and_register_service(server)
    server.add_insecure_port(endpoint)
    server.start()
    while True:
        try:
            time.sleep(1)
        except KeyboardInterrupt:
            server.stop(wait_shutdown_secs).wait()
            return