某些 Azure CLI 作業是非同步的。 若要追蹤非同步作業的狀態, operationStatuses 可以使用資源。 啟用--debug標記後,可以執行非同步命令。 指定 --debug 時,可以監視要求的進度。 您可以透過檢查在建立要求的 HTTP 回應中的 Azure-AsyncOperation 或 Location 標頭來找到作業狀態 URL。
... many lines of logged information ...
urllib3.connectionpool: https://management.azure.com:443 "PUT /subscriptions/.../resourceGroups/.../providers/Microsoft.NetworkCloud/clusters/.../metricsConfigurations/default?api-version=2022-12-12-preview HTTP/1.1" 201 926
cli.azure.cli.core.util: Response status: 201
cli.azure.cli.core.util: Response headers:
... several lines of http headers of the response ...
cli.azure.cli.core.util: 'Azure-AsyncOperation': 'https://management.azure.com/subscriptions/.../providers/Microsoft.NetworkCloud/locations/EASTUS/operationStatuses/12312312-1231-1231-1231-123123123123*99399E995...?api-version=2022-12-12-preview'
... remaining http headers of the response and more lines of logging ...
使用先前的值: https://management.azure.com/subscriptions/.../providers/Microsoft.NetworkCloud/locations/EASTUS/operationStatuses/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e*99399E995...?api-version=2022-12-12-preview,可以發出 Azure CLI az rest 呼叫來擷取作業狀態。
az rest -m get -u "https://management.azure.com/subscriptions/.../providers/Microsoft.NetworkCloud/locations/EASTUS/operationStatuses/12312312-1231-1231-1231-123123123123*99399E995...?api-version=2022-12-12-preview"
此要求會傳回作業狀態結果,可以使用相同的命令來要求該結果,直到狀態達到Succeeded 或 Failed的最終狀態為止。 此時,請求的操作已停止。
{
"endTime": "2023-02-08T17:38:31.2042934Z",
"error": {},
"id": "subscriptions/.../providers/Microsoft.NetworkCloud/locations/EASTUS/operationStatuses/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e*99399E995...?api-version=2022-12-12-preview",
"name": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e*99399E995...",
"properties": null,
"resourceId": "subscriptions/.../resourceGroups/.../providers/Microsoft.NetworkCloud/clusters/.../metricsConfigurations/default?api-version=2022-12-12-preview",
"startTime": "2023-02-08T17:38:24.7576911Z",
"status": "Succeeded"
}