Azure 应用配置 Python SDK
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/azure-appconfiguration-py。
技能介绍
背景:配置散落在代码与环境变量里
在微服务或多环境部署里,数据库连接、开关、灰度策略往往写在 .env、配置文件或硬编码分支里。改一个值就要发版,dev/staging/prod 也容易串环境。Azure App Configuration 把键值设置集中托管,并支持功能标志与只读/快照;本技能面向 azure-appconfiguration Python 客户端,说明如何在工程里读写这些资源,而不是再写一套自研配置中心。
技能覆盖的核心能力
- 鉴权与客户端生命周期:优先
DefaultAzureCredential(本地 Azure CLI/VS Code,云端托管/工作负载标识),生产侧可用AZURE_TOKEN_CREDENTIALS收窄凭据链;客户端与异步凭据应放在with/async with里释放连接与令牌缓存。 - 配置设置 CRUD:
get_configuration_setting、set_configuration_setting、delete_configuration_setting,以及list_configuration_settings;可按标签(如 dev/staging/prod)或键前缀(如app:database:*)过滤。 - 功能标志:设置、获取、列出 feature flag,用于灰度与 A/B 场景。
- 治理与回滚:
set_read_only锁定生产项;begin_create_snapshot/list_snapshots在变更前留时间点快照。 - 同步与异步:文档区分同步客户端与
aio异步客户端及对应操作表;要求同一路径不要混用两种模式。
适用边界与注意点
技能是 SDK 用法与最佳实践摘要,不是 Azure 门户开通教程。连接字符串虽可能存在,但文档明确倾向 Entra ID 而非长期密钥。长时间运行的进程需要自行设计定期刷新设置;次要/高级场景见资料中的 references/capabilities.md 与 references/non-hero-scenarios.md,本介绍不展开非核心能力。
使用场景
- 在 Azure 上运行的 Python 服务需把数据库、缓存等键值从代码迁到 App Configuration,并按 dev/staging/prod 标签隔离读取。
- 灰度发布前要在 App Configuration 里设置功能标志,让 Python 客户端按 flag 开关新接口而无需重新发版。
- 生产变更前用快照锁定当前配置集合,部署异常时对照 list_snapshots 与快照设置做回滚核对。
- 维护长期运行的 Python 进程时,需定期 list/get 配置并在同一调用链里固定使用同步或异步 aio 客户端。
适合人员
- 在 Azure 托管 Python 微服务、要把环境变量拆成集中配置并接入 DefaultAzureCredential 的后端工程师
- 负责生产 App Configuration 键值、需用 set_read_only 与部署前快照防误改的平台或 SRE
- 用功能标志做 A/B 或灰度、需在 Python 里 get/list feature flag 的产品或发布工程师
- 刚接手 azure-appconfiguration SDK、要理清键前缀过滤与标签策略的多环境项目负责人