Spring:Azure 功能管理器功能切换 Microsoft.Targeting bean 未找到

标签 spring azure kotlin spring-cloud spring-cloud-azure

我当前在使用 Azure 功能管理器时遇到问题。我使用以下教程向我的应用程序添加功能切换:Link

只要我们谈论手动设置的功能标志,这就可以正常工作。一旦 Azure 中的功能类型设置为“定位”,以下代码就会导致错误。

featureManager.isEnabledAsync(FeatureToggle.OUR_FEATURE_TARGETING.key).block()

具体来说,我们将在 spring 错误日志中得到No bean name 'Microsoft.Targeting' available。尝试访问包含上述代码的端点的客户端将收到 500 错误消息 Fail fast is set and a Filter was unavailable: Microsoft.Targeting

<小时/>

其他信息

我正在使用 Kotlin 和 Spring。

将该功能设置为“基于时间”也会导致错误。

调用功能管理器的服务如下所示

@Autowired
private lateinit var featureManager: FeatureManager

fun feature(): String {
        if (featureManager.isEnabledAsync(FeatureToggle.OUR_FEATURE_TARGETING.key).block() == true) {
            return "feature A!"
        } else {
            return "feature B!"
        }

FeatureToggle 枚举看起来像这样

enum class FeatureToggle(val key: String) {
    OUR_FEATURE_TARGETING("feature")
}

最佳答案

该指南中没有详细介绍,但默认情况下内置功能标志未配置为打开,因此需要在 @Configuration 文件中构建。更多信息可以在这里找到https://microsoft.github.io/spring-cloud-azure/docs/azure-app-configuration/2.3.0/reference/html/index.html#built-in-feature-filters

关于Spring:Azure 功能管理器功能切换 Microsoft.Targeting bean 未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65218566/

相关文章:

json - 忽略Gson反序列化中的一些嵌套项

java - 惰性流操作和 stream() 的未解析引用

java - Angular 从 Spring RestController 获取图像并缓存它

java - import com.fasterxml.jackson.databind.ObjectMapper 无法解析

powershell - 更新-AzureRmVmss : Required parameter 'adminPassword' is missing (null)

azure - 系统为 Azure 逻辑应用生成的电子邮件

kotlin - 如何避免 kotlin Exposed 上的 N+1 查询问题。 (当通过 DAO 的 Reference.id.value 字段获取值时)

spring - 如何从 Spring Boot 中的公共(public)类中获取 session ?

spring - 为具有复合 ID 的实体自定义 HATEOAS 链接生成

sql-server - Azure 数据库自动导出到本地计算机