共用方式為


在 Azure Spring Apps 企業版方案中管理和使用作業

注意

基本標準和企業方案將從 2025 年 3 月中旬開始淘汰,並停用 3 年。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 Azure Spring Apps 淘汰公告

標準 耗用量和專用 方案將從 2024 年 9 月 30 日起淘汰,並在六個月後完成關閉。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 將 Azure Spring Apps 標準取用和專用方案遷移至 Azure Container Apps

本文適用於: ❎基本/標準 ✅ 企業

本文說明如何管理作業的生命週期,並在 Azure Spring Apps 企業版方案中執行作業。

必要條件

建立和部署作業

使用下列命令來建立和部署作業:

az spring job create --name <job-name>
az spring job deploy \
    --name <job-name> \
    --artifact-path <artifact-path>

針對公開預覽,您可以為每個服務實例建立最多 10 個作業。

啟動和取消作業執行

使用下列指令啟動作業執行:

az spring job start --name <job-name>

如果命令成功執行,它會傳回作業執行的名稱。 --wait-until-finished true使用 參數時,命令不會傳回,直到作業執行完成為止。

若要查詢作業執行的狀態,請使用下列命令。 <execution-name>將取代為 start 命令傳回的名稱。

az spring job execution show \
    --job <job-name> \
    --name <execution-name>

若要取消正在執行的作業執行,請使用下列命令:

az spring job execution cancel \
    --job <job-name> \
    --name <execution-name>

查詢作業執行歷程記錄

若要顯示執行歷程記錄,請使用下列命令:

az spring job execution list --job <job-name>

針對公開預覽,每個作業的最新 10 個已完成或失敗的作業執行記錄會保留在歷程記錄中。

查詢作業執行記錄

若要取得 Azure 入口網站 中作業執行的歷程記錄,請使用下列Log Analytics查詢:

AppPlatformLogsforSpring
| where AppName == '<job-name>' and InstanceName startswith '<execution-name>'
| order by TimeGenerated asc

如需詳細資訊,請參閱 快速入門:設定Log Analytics工作區

針對實時記錄,請在命令行上使用下列命令:

az spring job logs \
    --name <job-name> \
    --execution <execution-name>

如果作業執行有多個實例,請指定 --instance <instance-name> 只檢視一個實例的記錄。

重新執行作業

使用下列命令來觸發新的作業執行:

az spring job start \
    --name <job-name> \
    --args <argument-value> \
    --envs <key=value>

與受控元件整合

針對公開預覽,作業可以順暢地與 Spring Cloud Config Server 整合,以便有效率地進行組態管理和 Tanzu Service Registry 進行服務探索。

與 Spring Cloud Config Server 整合

使用 Spring Cloud Config Server,您可以管理 Git 存放庫中作業所需的設定或屬性,然後將它們載入作業。 設定 Spring Cloud Config Server 的 Git 存放庫組態之後,您必須將作業系結至伺服器。

使用下列命令,在建立作業期間將作業系結至 Spring Cloud Config Server:

az spring job create \
    --name <job-name> \
    --bind-config-server true

針對現有的作業,請使用下列命令將它們系結至 Spring Cloud Config Server:

az spring config-server bind --job <job-name>

如果您不再需要 Spring Cloud Config Server 來進行作業,您可以將它們解除系結。 這項變更會影響新的作業執行。

使用下列命令來解除繫結作業:

az spring config-server unbind --job <job-name>

與 Tanzu 服務登錄整合

作業通常會從共同作業中長時間執行的應用程式呼叫 API,以查詢資訊、通知等等。 若要讓作業探索在相同 Azure Spring Apps 服務中執行的應用程式,您可以將應用程式和作業系結至受控服務登錄。 下一節說明如何將作業系結至 Tanzu 服務登錄。

在建立作業期間,使用下列命令將作業系結至 Tanzu Service Registry:

az spring job create --bind-service-registry true

針對現有的作業,請使用下列命令將它們系結至 Tanzu Service Registry:

az spring service-registry bind --job <job-name>

當您執行作業執行時,它可以透過服務登錄存取已註冊應用程式的端點。

如果您不再需要作業的服務登錄,則可以將其解除系結。 這項變更會影響新的作業執行。

使用下列命令解除系結作業:

az spring service-registry unbind --job <job-name>

另請參閱

Azure Spring Apps 中的作業