如何在Java中始终加载Azure应用配置中的无标签功能标志,Spring

xuo3flqw  于 2023-06-30  发布在  Java
关注(0)|答案(1)|浏览(128)

我正在使用azure应用程序配置来存储我的功能标志。默认情况下,功能标志按照当前配置文件加载,在application.yaml中设置如下:

spring.profile.active

现在,我的部署环境中有单独的Azure应用程序配置示例,分别用于dev、pre和prod。
所以,我想如果我的应用程序运行在开发环境中,那么它应该能够加载无标签和开发标签。就像如果有人只定义了没有标签的键,那么它也应该工作,应该能够获取值。
这可以通过提供应用程序配置来实现:

spring.cloud.azure.appconfiguration.stores[0].selects[0].label-filter: ",${spring.profiles.active}"

但提供相同的功能标志不起作用:

spring.cloud.azure.appconfiguration.stores[0].feature-flags.label-filter:",${spring.profiles.active}"

当spring.profile.active有一些值时,可以建议如何加载无标签标志。

56lgkhnf

56lgkhnf1#

您使用的库的版本,配置设置看起来像旧的。如果更新到最新版本:

For Spring Framework 2
<dependency>
    <groupId>com.azure.spring</groupId>
    <artifactId>spring-cloud-azure-appconfiguration-config</artifactId>
    <version>4.8.0</version>
</dependency>

For Spring Framework 3
<dependency>
    <groupId>com.azure.spring</groupId>
    <artifactId>spring-cloud-azure-appconfiguration-config</artifactId>
    <version>5.2.0</version>
</dependency>

最新版本支持与配置相同的功能标志加载样式,请参阅此处的最后一个表https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/spring/spring-cloud-azure-starter-appconfiguration-config#supported-properties

相关问题