你可以透過 Azure CLI 管理 Azure 容器應用程式中已部署的功能。 以下指令幫助你列出、檢查並與容器化環境中執行的函式互動。
備註
在處理多重修訂情境時,可以在指令中加入 --revision <REVISION_NAME> 參數來鎖定特定版本。
清單函式
查看您的容器應用程式中部署的所有函式:
# List all functions
az containerapp function list \
--resource-group $RESOURCE_GROUP \
--name $CONTAINERAPP_NAME
顯示功能細節
獲取特定功能的詳細資訊:
az containerapp function show \
--resource-group $RESOURCE_GROUP \
--name $CONTAINERAPP_NAME \
--function-name <FUNCTIONS_APP_NAME>
監控函式調用
監控你的功能應用程式對於了解其效能並診斷問題至關重要。 以下指令說明如何透過 Azure CLI 取得函式網址、觸發調用,以及查看詳細的遙測與調用摘要。 在呼叫追蹤前,請先使用curl -X POST "fqdn/api/HttpExample"多次調用該函數。
若要檢視叫用追蹤,請取得函式叫用的詳細追蹤資訊:
az containerapp function invocations traces \ --name $CONTAINERAPP_NAME \ --resource-group $RESOURCE_GROUP \ --function-name <FUNCTIONS_APP_NAME> \ --timespan 5h \ --limit 3查看祈禱摘要以檢視成功與失敗的祈禱。
az containerapp function invocations summary \ --name $CONTAINERAPP_NAME \ --resource-group $RESOURCE_GROUP \ --function-name <FUNCTIONS_APP_NAME> \ --timespan 5h
管理函式金鑰
Azure Functions 使用 金鑰來進行認證和授權。 你可以管理以下不同類型的鑰匙:
- 主機金鑰:存取應用程式中的任何功能
- 主金鑰:提供管理權限
- 系統金鑰:Azure 服務使用
- 功能鍵:存取特定功能
以下指令會教你如何管理主機的金鑰。 要執行同一指令給特定的 Functions 應用程式,請在你的指令中加入該 --function-name <FUNCTIONS_APP_NAME> 參數。
列出金鑰
請使用以下指令列出在容器應用程式中執行的 Azure 函式的主機層級及函式專屬金鑰。
備註
至少要維持一個副本在運作,才能執行以下的金鑰管理指令。
az containerapp function keys list \
--resource-group $RESOURCE_GROUP \
--name $CONTAINERAPP_NAME \
--key-type hostKey
顯示特定鍵
使用以下指令顯示你函式應用程式特定主機層金鑰的值:
az containerapp function keys show \
--resource-group $RESOURCE_GROUP \
--name $CONTAINERAPP_NAME \
--key-name <KEY_NAME> \
--key-type hostKey
設定一把鑰匙
請使用以下指令為你的函式應用程式設定特定的主機層級金鑰:
az containerapp function keys set \
--resource-group $RESOURCE_GROUP \
--name $CONTAINERAPP_NAME \
--key-name <KEY_NAME> \
--key-value <KEY_VALUE> \
--key-type hostKey
Azure Key Vault 的金鑰管理
當你使用 Azure Key Vault 在容器應用程式上儲存 Azure Functions 的秘密時,金鑰產生的運作方式與傳統 Functions 主機不同。
預設情況:
Functions 主機在啟動時不會自動在 Key Vault 建立金鑰。
函式主機會擷取並使用金鑰(如果金鑰庫中已存在金鑰)。
函式主機即使沒有鍵也能順利啟動,鍵同步也正常完成。
因此,你的應用程式能正常執行,但主機層級的金鑰不會出現在 Key Vault 中,除非你手動建立它們。
手動產生鍵
要在 Azure Key Vault 中觸發金鑰建立,請使用以下 CLI 指令呼叫函式管理端點。
az containerapp function keys list \
-n <CONTAINER_APP_NAME> \
-g <RESOURCE_GROUP> \
--key-type hostKey