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 檔。
後續步驟