Azure 应用配置维护键值更改的记录。 此记录提供键值更改的时间线。 可以重新构造任何密钥的历史记录,并在密钥历史记录期间的任何时刻提供其过去值(免费层存储的 7 天或标准层存储的 30 天)。 使用此功能,可以向后“时间旅行”并检索旧的键值。 例如,可以恢复最近部署之前使用的配置设置,以便将应用程序回滚到以前的配置。
还原键值
可以使用 Azure 门户或 Azure CLI 检索过去的键值。
登录到 Azure 门户。 选择 “所有资源”,然后选择存储密钥值的应用配置存储实例。
在“操作”菜单中,选择“还原”。
选择 “日期:选择日期 ”以选择要还原的日期和时间。
单击日期和时间字段外部,或按 Tab 来验证你的选择。 现在,您可以查看选定日期和时间与当前时间之间哪些键值发生了变化。 此步骤可帮助你了解要准备还原到哪些键和值。
门户显示键值表。 第一列包含指示在所选日期和时间还原数据时会发生什么情况的符号:
- 红色减号 (–) 表示键值在所选日期和时间不存在,并且将被删除。
- 绿色加号(+)表示键值存在于所选日期和时间,现在不存在。 如果还原为所选日期和时间,则会将其添加回配置。
- 橙色项目符号(•)表示键值自所选日期和时间以来已修改。 该键将还原到所选日期和时间的值。
选中行中的复选框以选择/取消选择需要操作的键值。 选择后,将显示当前日期和时间与所选日期和时间之间的键值的差异。
在上面的示例中,预览显示键 TestApp:Settings:BackgroundColor,该键当前具有 #FFF 值。 如果我们还原数据,此值将修改为 #45288E。
可以在表中选中一个或多个复选框,以便对所选的键值执行操作。 还可以使用列表顶部的“全选”复选框来选择/取消选择所有键值。
选择 “还原 ”,将所选键值还原到所选数据和时间。
按如下所述使用 Azure CLI 检索和还原过去的键值。 如果没有在本地安装 Azure CLI,可以选择使用 Azure Cloud Shell。
在 CLI 中,使用 az appconfig revision list
查看更改或使用 az appconfig kv restore
还原键值(请添加相应的参数)。 通过提供存储名称()或使用连接字符串(--name <app-config-store-name>
--connection-string <your-connection-string>
)指定 Azure 应用配置实例。 通过指定特定时间点()、标签(--datetime
--label
)和要返回的最大项数来限制输出。--top
并指定要返回的最大项数(--top
)。
检索所记录的所有键值更改。
az appconfig revision list --name <your-app-config-store-name>
将所有键值还原到特定的时间点。
az appconfig kv restore --name <app-config-store-name> --datetime "2019-05-01T11:24:12Z"
从 v1 开始可以按照任何标签还原。 到特定的时间点。
az appconfig kv restore --name <app-config-store-name> --label v1.* --datetime "2019-05-01T11:24:12Z"
有关用于还原键值的 CLI 命令和可选参数的更多示例,请转到 Azure CLI 文档。
还可以访问特定键值的历史记录。 此功能允许你在所选时间点检查特定键的值,并还原到过去的值,而无需更新任何其他键值。
键值的历史/时间线视图
小提示
如果只需进行不超过几次的更改,此方法就很方便,因为配置资源管理器仅允许逐个键进行更改。 如果需要一次性还原多个键值,请改用 “还原 ”菜单。
还可以在门户中访问特定键值的修订历史记录。
在 “操作” 菜单中,选择 “配置资源管理器”。
选择要浏览的密钥,点击“更多操作”,然后选择“历史记录”。
现在可以查看所选密钥的修订历史记录以及有关更改的信息。
选择 “还原 ”,将密钥和值还原到此时间点。
按如下所述使用 Azure CLI 检索和还原单个键值。 如果没有在本地安装 Azure CLI,可以选择使用 Azure Cloud Shell。
在 CLI 中,用于 az appconfig revision list
查看对键值所做的更改,或者用于 az appconfig kv restore
还原键值,并添加适当的参数。 通过提供存储名称()或使用连接字符串(--name <app-config-store-name>
--connection-string <your-connection-string>
)指定 Azure 应用配置实例。 通过指定特定键(--key
)来限制输出。 (可选)指定标签(--label
)、时间点(--datetime
)和要返回的最大项数(--top
)。
列出带有任何标签的键“颜色”的修订历史记录。
az appconfig revision list --name <app-config-store-name> --key color
列出具有标签的特定键值的修订历史记录。
az appconfig revision list --name <app-config-store-name> --key color --label test
列出具有多个标签的键值修订历史记录。
az appconfig revision list --name <app-config-store-name> --key color --label test,prod,\0
在特定时间点检索密钥 color
的所有记录更改。
az appconfig revision list --name <app-config-store-name> --key color --datetime "2019-05-01T11:24:12Z"
检索特定时间点密钥 color
的最后 10 条记录更改。
az appconfig revision list --name <app-config-store-name> --key color --top 10 --datetime "2019-05-01T11:24:12Z"
有关更多示例和可选参数,请转到 Azure CLI 文档。
后续步骤