This issue has shown that, when we introduce new providers and propagate the configs to users, then remove the config ("asf" was removed and renamed to "default"), user configuration breaks
- #6358

One way of dealing with this is checking at startup time whether the configured providers are available, and if not, log a warning and fall back to the default provider.
providers = self.api_provider_specs.get(name)
        if not providers:
            
            return None
        preferred_provider = self.get_active_provider(name)
        if preferred_provider in providers:
            provider = preferred_provider
        else:
            LOG.warning(
                "Configured provider (%s) does not exist for service (%s). Available options are: %s",
                preferred_provider,
                name,
                providers,
            )
            return None
        plugin_name = f"{name}:{provider}"
        plugin = self.plugin_manager.load(plugin_name)
        plugin.name = plugin_name
        return plugin
    @log_duration()
    def _resolve_api_provider_specs(self) -> Dict[str, List[str]]:
        result = defaultdict(list)
        for spec in self.plugin_manager.list_plugin_specs():
            api, provider = spec.name.split(
                ":"
            )  
            result[api].append(provider)
        return result
    def apis_with_provider(self, provider: str) -> List[str]: