你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Task - Get

获取有关指定任务的信息。
对于多实例任务,affinityId、executionInfo 和 nodeInfo 等信息引用主任务。 使用列表子任务 API 检索有关子任务的信息。

GET {batchUrl}/jobs/{jobId}/tasks/{taskId}?api-version=2023-11-01.18.0
GET {batchUrl}/jobs/{jobId}/tasks/{taskId}?$select={$select}&$expand={$expand}&timeout={timeout}&api-version=2023-11-01.18.0

URI 参数

名称 必需 类型 说明
batchUrl
path True

string

所有Azure Batch服务请求的基 URL。

jobId
path True

string

包含任务的作业的 ID。

taskId
path True

string

要获取相关信息的任务的 ID。

api-version
query True

string

客户端 API 版本。

$expand
query

string

OData $expand 子句。

$select
query

string

OData $select 子句。

timeout
query

integer

int32

服务器可以花费处理请求的最长时间(以秒为单位)。 默认为 30 秒。

请求头

Media Types: "application/json; odata=minimalmetadata"

名称 必需 类型 说明
client-request-id

string

uuid

调用方生成的请求标识,采用不带修饰(如大括号)的 GUID 形式,例如 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0。

return-client-request-id

boolean

服务器是否应在响应中返回 client-request-id。

ocp-date

string

date-time-rfc1123

发出请求的时间。 客户端库通常将此设置为当前系统时钟时间;如果直接调用 REST API,请显式设置它。

If-Match

string

与客户端已知的资源版本关联的 ETag 值。 仅当服务上的资源当前 ETag 与客户端指定的值完全匹配时,才会执行该操作。

If-None-Match

string

与客户端已知的资源版本关联的 ETag 值。 仅当服务上的资源当前 ETag 与客户端指定的值不匹配时,才会执行该操作。

If-Modified-Since

string

date-time-rfc1123

一个时间戳,指示客户端已知的资源的上次修改时间。 仅当服务上的资源自指定时间以来已修改时,才会执行该操作。

If-Unmodified-Since

string

date-time-rfc1123

一个时间戳,指示客户端已知的资源的上次修改时间。 仅当服务上的资源自指定时间以来未修改时,才会执行该操作。

响应

名称 类型 说明
200 OK

CloudTask

包含任务的响应。

Headers

  • client-request-id: string
  • request-id: string
  • ETag: string
  • Last-Modified: string
  • DataServiceId: string
Other Status Codes

BatchError

Batch 服务中的错误。

安全性

azure_auth

Microsoft Entra OAuth 2.0 身份验证代码流

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

名称 说明
user_impersonation 模拟用户帐户

Authorization

Type: apiKey
In: header

示例

Task get

Sample Request

GET account.region.batch.azure.com/jobs/jobId/tasks/taskId?api-version=2023-11-01.18.0


Sample Response

{
  "id": "testTask",
  "url": "https://account.region.batch.azure.com/jobs/jobId/tasks/taskId",
  "eTag": "0x8D3D62350711C55",
  "creationTime": "2016-09-06T06:59:15.1161429Z",
  "lastModified": "2016-09-06T06:59:15.1161429Z",
  "state": "active",
  "stateTransitionTime": "2016-09-06T06:59:15.1161429Z",
  "commandLine": "cmd /c hostname",
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  },
  "multiInstanceSettings": {
    "numberOfInstances": 3,
    "coordinationCommandLine": "cmd /c echo coordinating"
  },
  "constraints": {
    "maxWallClockTime": "P10675199DT2H48M5.4775807S",
    "retentionTime": "P10675199DT2H48M5.4775807S",
    "maxTaskRetryCount": 0
  },
  "requiredSlots": 2,
  "executionInfo": {
    "retryCount": 0,
    "requeueCount": 0
  }
}

定义

名称 说明
AccessScope

令牌向其授予访问权限的 Batch 资源。

AffinityInformation

Batch 服务可以使用该提示来选择要启动任务的计算节点。

ApplicationPackageReference

对要部署到计算节点的包的引用。

AuthenticationTokenSettings

任务可用于执行 Batch 服务操作的身份验证令牌的设置。

AutoUserScope

自动用户的范围

AutoUserSpecification

为在 Batch 服务上运行 Task 的自动用户指定参数。

BatchError

从Azure Batch服务收到的错误响应。

BatchErrorDetail

Azure Batch错误响应中包含的其他信息项。

CloudTask

Azure Batch任务。

ComputeNodeIdentityReference

对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

ComputeNodeInformation

有关运行任务的计算节点的信息。

ContainerRegistry

专用容器注册表。

ContainerWorkingDirectory

容器任务工作目录的位置。

DependencyAction

Batch 服务对依赖于此任务的任务执行的操作。

ElevationLevel

用户的提升级别。

EnvironmentSetting

要对任务进程设置的环境变量。

ErrorCategory

错误的类别。

ErrorMessage

Azure Batch错误响应中收到的错误消息。

ExitCodeMapping

如果任务使用特定退出代码退出,Batch 服务应如何响应。

ExitCodeRangeMapping

退出代码范围以及 Batch 服务应如何响应该范围内的退出代码。

ExitConditions

指定 Batch 服务在任务完成时应如何响应。

ExitOptions

指定 Batch 服务如何响应特定退出条件。

HttpHeader

HTTP 标头名称/值对

JobAction

如果 Task 以给定的退出条件完成并且作业的 onTaskFailed 属性为“performExitOptionsJobAction”,则对包含 Task 的作业执行的操作。

MultiInstanceSettings

指定如何运行多实例 Task 的设置。

NameValuePair

表示一个名称-值对。

OutputFile

在 Batch 服务完成任务进程执行后,将文件从Azure Batch计算节点上传到另一个位置的规范。

OutputFileBlobContainerDestination

指定 Azure Blob 存储容器中的文件上传目标。

OutputFileDestination

文件应上传到的目标。

OutputFileUploadCondition

应上传任务输出文件或文件集的条件。

OutputFileUploadOptions

有关输出文件上传操作的详细信息,包括在什么条件下执行上传。

ResourceFile

要下载到计算节点的单个文件或多个文件。

TaskConstraints

要应用于 Task 的执行约束。

TaskContainerExecutionInformation

包含有关任务正在执行的容器的信息。

TaskContainerSettings

任务的容器设置。

TaskDependencies

指定 Task 的任何依赖项。 显式指定或依赖关系范围内的任何任务都必须完成,然后才能计划从属任务。

TaskExecutionInformation

有关任务执行的信息。

TaskExecutionResult

任务执行的结果。

TaskFailureInformation

有关任务失败的信息。

TaskIdRange

任务可以依赖的任务 ID 范围。 在计划依赖任务之前,必须成功完成该范围中 ID 的所有任务。

TaskState

任务的状态。

TaskStatistics

任务的资源使用情况统计信息。

UserIdentity

运行任务时所依据的用户标识的定义。

AccessScope

令牌向其授予访问权限的 Batch 资源。

名称 类型 说明
job

string

授予对包含任务的作业执行所有操作的权限。

AffinityInformation

Batch 服务可以使用该提示来选择要启动任务的计算节点。

名称 类型 说明
affinityId

string

表示计算节点或以前运行的任务的位置的不透明字符串。
可以传递 Node 的 affinityId,以指示此任务需要在该计算节点上运行。 请注意,这只是一种软相关性。 如果目标计算节点在计划任务时正忙或不可用,则将将任务安排在其他位置。

ApplicationPackageReference

对要部署到计算节点的包的引用。

名称 类型 说明
applicationId

string

要部署的应用程序的 ID。
创建池时,包的应用程序 ID 必须完全限定 (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}) 。

version

string

要部署的应用程序的版本。 如果省略,则部署默认版本。
如果在池中省略此项,并且未为此应用程序指定默认版本,则请求将失败,错误代码为 InvalidApplicationPackageReferences 和 HTTP 状态代码 409。 如果在 Task 上省略此版本,并且未为此应用程序指定默认版本,则任务将失败并出现预处理错误。

AuthenticationTokenSettings

任务可用于执行 Batch 服务操作的身份验证令牌的设置。

名称 类型 说明
access

AccessScope[]

令牌授予访问权限的 Batch 资源。
身份验证令牌授予对一组有限的 Batch 服务操作的访问权限。 目前,访问属性支持的唯一值是“job”,它授予对包含 Task 的 Job 相关所有操作的访问权限。

AutoUserScope

自动用户的范围

名称 类型 说明
pool

string

指定任务作为在池中的每个计算节点上创建的通用自动用户帐户运行。

task

string

指定服务应为 Task 创建新用户。

AutoUserSpecification

为在 Batch 服务上运行 Task 的自动用户指定参数。

名称 类型 说明
elevationLevel

ElevationLevel

自动用户的提升级别。
默认值为 nonAdmin。

scope

AutoUserScope

自动用户的作用域
默认值为 pool。 如果池运行的是 Windows,则当任务之间需要更严格的隔离时,应指定 Task 值。 例如,如果任务以可能影响其他任务的方式改变注册表,或者已在池上指定了证书,而普通任务不应访问,但应由 StartTasks 访问。

BatchError

从Azure Batch服务收到的错误响应。

名称 类型 说明
code

string

错误的标识符。 代码是固定的,旨在以编程方式使用。

message

ErrorMessage

描述错误的消息,该消息适用于在用户界面中显示。

values

BatchErrorDetail[]

包含有关错误的其他详细信息的键值对的集合。

BatchErrorDetail

Azure Batch错误响应中包含的其他信息项。

名称 类型 说明
key

string

指定 Value 属性的含义的标识符。

value

string

错误响应附带的其他信息。

CloudTask

Azure Batch任务。

名称 类型 说明
affinityInfo

AffinityInformation

Batch 服务可以使用该提示来选择要启动新任务的计算节点。

applicationPackageReferences

ApplicationPackageReference[]

Batch 服务在运行命令行之前将部署到计算节点的包列表。
应用程序包下载并部署到共享目录,而不是 Task 工作目录。 因此,如果引用的包已在节点上,并且是最新的,则不会重新下载;使用计算节点上的现有副本。 如果无法安装引用的包,例如,因为包已被删除或下载失败,则任务将失败。

authenticationTokenSettings

AuthenticationTokenSettings

任务可用于执行 Batch 服务操作的身份验证令牌的设置。
如果设置了此属性,Batch 服务将为 Task 提供身份验证令牌,该令牌可用于对 Batch 服务操作进行身份验证,而无需帐户访问密钥。 令牌通过 AZ_BATCH_AUTHENTICATION_TOKEN 环境变量提供。 任务可以使用令牌执行的操作取决于设置。 例如,任务可以请求作业权限,以便将其他任务添加到作业,或检查作业下作业或其他任务的状态。

commandLine

string

Task 的命令行。
对于多实例任务,在主任务和所有子任务执行完协调命令行后,命令行将作为主任务执行。 命令行不在 shell 下运行,因此无法利用 shell 功能,例如环境变量扩展。 如果要利用此类功能,则应在命令行中调用 shell,例如在 Windows 中使用“cmd /c MyCommand”或 Linux 中的“/bin/sh -c MyCommand”。 如果命令行引用文件路径,则应使用相对于 Task 工作目录) 的相对路径 (,或使用 Batch 提供的环境变量 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables) 。

constraints

TaskConstraints

适用于此任务的执行约束。

containerSettings

TaskContainerSettings

运行 Task 的容器的设置。
如果将运行此任务的池具有 containerConfiguration 集,则还必须设置此设置。 如果将运行此任务的池未设置 containerConfiguration,则不得设置此设置。 指定此项后,所有目录以递归方式AZ_BATCH_NODE_ROOT_DIR (节点上Azure Batch目录的根目录) 映射到容器中,所有 Task 环境变量都映射到容器中,任务命令行在容器中执行。 AZ_BATCH_NODE_ROOT_DIR 外部容器中生成的文件可能不会反映在主机磁盘上,这意味着 Batch 文件 API 将无法访问这些文件。

creationTime

string

任务的创建时间。

dependsOn

TaskDependencies

此任务所依赖的任务。
除非它所依赖的所有任务都成功完成,否则不会计划此任务。 如果其中任一任务失败并耗尽其重试计数,则永远不会计划此任务。

displayName

string

任务的显示名称。
显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。

eTag

string

任务的 ETag。
这是一个不透明的字符串。 可以使用它来检测任务是否在请求之间发生了更改。 具体而言,可以在更新任务时传递 ETag,以指定仅当其他人在此期间没有修改任务时所做的更改才生效。

environmentSettings

EnvironmentSetting[]

任务环境变量设置的列表。

executionInfo

TaskExecutionInformation

有关任务执行的信息。

exitConditions

ExitConditions

指定 Batch 服务在任务完成时应如何响应。
Batch 服务在任务完成时应如何响应。

id

string

唯一标识作业中的 Task 的字符串。
ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。

lastModified

string

任务的上次修改时间。

multiInstanceSettings

MultiInstanceSettings

一个 对象,指示 Task 是多实例 Task,并包含有关如何运行多实例 Task 的信息。
多实例任务通常用于支持 MPI 任务。 在 MPI 情况下,如果任何子任务失败 (例如由于退出代码为非零) 整个多实例任务失败。 然后终止多实例任务并重试,达到其重试限制。

nodeInfo

ComputeNodeInformation

有关运行 Task 的计算节点的信息。

outputFiles

OutputFile[]

运行命令行后 Batch 服务将从计算节点上传的文件列表。
对于多实例任务,文件将仅从执行主任务的计算节点上传。

previousState

TaskState

任务的上一状态。
如果 Task 处于初始活动状态,则不设置此属性。

previousStateTransitionTime

string

任务进入其上一状态的时间。
如果 Task 处于初始活动状态,则不设置此属性。

requiredSlots

integer

任务运行所需的计划槽数。
默认值为 1。 如果节点有足够的可用计划槽,则只能将任务计划为在计算节点上运行。 对于多实例任务,这必须为 1。

resourceFiles

ResourceFile[]

运行命令行之前 Batch 服务将下载到计算节点的文件列表。
对于多实例任务,资源文件将仅下载到执行主任务的计算节点。 资源文件列表有最大大小。 超过最大大小时,请求将失败,响应错误代码为 RequestEntityTooLarge。 如果发生这种情况,必须减小 ResourceFiles 集合的大小。 这可以通过 .zip 文件、应用程序包或 Docker 容器来实现。

state

TaskState

任务的当前状态。

stateTransitionTime

string

任务进入其当前状态的时间。

stats

TaskStatistics

任务的资源使用情况统计信息。

url

string

任务的 URL。

userIdentity

UserIdentity

运行任务时所依据的用户标识。
如果省略,则任务将作为任务唯一的非管理用户运行。

ComputeNodeIdentityReference

对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

名称 类型 说明
resourceId

string

用户分配的标识的 ARM 资源 ID。

ComputeNodeInformation

有关运行任务的计算节点的信息。

名称 类型 说明
affinityId

string

运行任务的节点的标识符,可在添加任务以请求在此计算节点上计划任务时传递该标识符。

nodeId

string

运行 Task 的计算节点的 ID。

nodeUrl

string

运行任务的计算节点的 URL。

poolId

string

运行任务的池的 ID。

taskRootDirectory

string

计算节点上 Task 的根目录。

taskRootDirectoryUrl

string

计算节点上任务根目录的 URL。

ContainerRegistry

专用容器注册表。

名称 类型 说明
identityReference

ComputeNodeIdentityReference

对用户分配的标识的引用,该标识用于访问Azure 容器注册表,而不是用户名和密码。
对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

password

string

用于登录到注册表服务器的密码。

registryServer

string

注册表 URL。
如果省略,则默认值为“docker.io”。

username

string

要登录到注册表服务器的用户名。

ContainerWorkingDirectory

容器任务工作目录的位置。

名称 类型 说明
containerImageDefault

string

使用容器映像中定义的工作目录。 请注意,此目录不包含 Batch 下载的资源文件。

taskWorkingDirectory

string

使用标准 Batch 服务任务工作目录,其中包含由 Batch 填充的任务资源文件。

DependencyAction

Batch 服务对依赖于此任务的任务执行的操作。

名称 类型 说明
block

string

阻止等待此任务的任务,从而阻止它们进行计划。

satisfy

string

满足等待此任务的任务;满足所有依赖项后,将计划运行任务。

ElevationLevel

用户的提升级别。

名称 类型 说明
admin

string

用户是具有提升访问权限的用户,使用完全的管理员权限进行操作。

nonadmin

string

用户是没有提升访问权限的标准用户。

EnvironmentSetting

要对任务进程设置的环境变量。

名称 类型 说明
name

string

环境变量的名称。

value

string

环境变量的值。

ErrorCategory

错误的类别。

名称 类型 说明
servererror

string

此错误是由于内部服务器问题造成的。

usererror

string

此错误是由于用户问题造成的,例如配置错误。

ErrorMessage

Azure Batch错误响应中收到的错误消息。

名称 类型 说明
lang

string

错误消息的语言代码

value

string

消息的文本。

ExitCodeMapping

如果任务使用特定退出代码退出,Batch 服务应如何响应。

名称 类型 说明
code

integer

进程退出代码。

exitOptions

ExitOptions

如果任务使用此退出代码退出,Batch 服务应如何响应。

ExitCodeRangeMapping

退出代码范围以及 Batch 服务应如何响应该范围内的退出代码。

名称 类型 说明
end

integer

范围中的最后一个退出代码。

exitOptions

ExitOptions

如果任务退出且范围中的退出代码开始结束 (包含) ,Batch 服务应如何响应。

start

integer

范围中的第一个退出代码。

ExitConditions

指定 Batch 服务在任务完成时应如何响应。

名称 类型 说明
default

ExitOptions

如果任务失败且退出条件未涵盖任何其他属性,Batch 服务应如何响应。
如果 Task 退出且未在 exitCodes 或 exitCodeRanges 集合中列出的任何非零退出代码,则使用此值;如果 preProcessingError 属性不存在,则返回预处理错误;如果 fileUploadError 属性不存在,则出现文件上传错误。 如果想要退出代码 0 上的非默认行为,则必须使用 exitCodes 或 exitCodeRanges 集合显式列出它。

exitCodeRanges

ExitCodeRangeMapping[]

任务退出代码范围的列表以及 Batch 服务应如何响应它们。

exitCodes

ExitCodeMapping[]

单个任务退出代码以及 Batch 服务应如何响应这些代码的列表。

fileUploadError

ExitOptions

发生文件上传错误时 Batch 服务应如何响应。
如果任务退出时通过 exitCodes 或 exitCodeRanges 指定的退出代码,然后遇到文件上传错误,则退出代码指定的操作优先。

preProcessingError

ExitOptions

如果任务因错误而无法启动,Batch 服务应如何响应。

ExitOptions

指定 Batch 服务如何响应特定退出条件。

名称 类型 说明
dependencyAction

DependencyAction

Batch 服务对依赖于此任务的任务执行的操作。
可能的值为“满足” (允许依赖任务) 进行, (依赖任务继续等待) “阻止”。 Batch 尚不支持取消依赖任务。

jobAction

JobAction

如果 Task 以给定的退出条件完成,并且作业的 onTaskFailed 属性为“performExitOptionsJobAction”,则对包含 Task 的作业执行的操作。
对于退出代码 0,默认值为 none,对于所有其他退出条件,默认值为“无”。 如果作业的 onTaskFailed 属性为 noaction,则指定此属性将返回错误,并且添加 Task 请求失败,并出现无效的属性值错误;如果直接调用 REST API,则 HTTP 状态代码为 400 (错误请求) 。

HttpHeader

HTTP 标头名称/值对

名称 类型 说明
name

string

上传输出文件时要使用的标头不区分大小写的名称

value

string

上传输出文件时要使用的标头的值

JobAction

如果 Task 以给定的退出条件完成并且作业的 onTaskFailed 属性为“performExitOptionsJobAction”,则对包含 Task 的作业执行的操作。

名称 类型 说明
disable

string

禁用作业。 这等效于调用 disable 作业 API,其 disableTasks 值为重新排队。

none

string

不采取任何操作。

terminate

string

终止作业。 作业的 executionInfo 中的 terminateReason 设置为“TaskFailed”。

MultiInstanceSettings

指定如何运行多实例 Task 的设置。

名称 类型 说明
commonResourceFiles

ResourceFile[]

在运行协调命令行之前,Batch 服务将下载的文件列表。
常见资源文件和任务资源文件的区别在于,为所有子任务(包括主任务)下载通用资源文件,而任务资源文件仅为主要任务下载。 另请注意,这些资源文件不会下载到 Task 工作目录,而是下载到任务根目录 (工作目录) 上方的一个目录。 资源文件列表有一个最大大小。 超过最大大小时,请求将失败,响应错误代码为 RequestEntityTooLarge。 如果发生这种情况,则必须减小 ResourceFiles 集合的大小。 这可以使用 .zip 文件、应用程序包或 Docker 容器来实现。

coordinationCommandLine

string

在所有计算节点上运行的命令行,使主节点能够在主节点运行 main Task 命令时协调这些节点。
典型的协调命令行启动后台服务,并验证该服务是否已准备好处理节点间消息。

numberOfInstances

integer

任务所需的计算节点数。
如果省略,则默认值为 1。

NameValuePair

表示一个名称-值对。

名称 类型 说明
name

string

名称/值对中的名称。

value

string

名称/值对中的值。

OutputFile

在 Batch 服务完成任务进程执行后,将文件从Azure Batch计算节点上传到另一个位置的规范。

名称 类型 说明
destination

OutputFileDestination

输出文件的目标 () 。

filePattern

string

一种模式,指示要上传的文件 () 。
支持相对路径和绝对路径。 相对路径相对于 Task 工作目录。 支持以下通配符:* 匹配 0 个或多个字符 (例如模式 abc* 将匹配 abc 或 abcdef) , ** 匹配任何目录,? 匹配任何单个字符,[abc] 匹配括号中的一个字符,[a-c] 匹配区域中的一个字符。 括号可以包含一个反数,以匹配任何未指定的字符 (例如[!abc] 匹配除 a、b 或 c) 的任何字符。 如果文件名以“.”开头,则默认忽略它,但可以通过显式指定来匹配它 (例如 ,.gif 将不匹配 .a.gif,但 ..gif 将) 。 一个简单的示例:***.txt 匹配不以“.”开头且以 Task 工作目录或任何子目录中 .txt 结尾的任何文件。 如果文件名包含通配符,则可以使用括号对其进行转义 (例如,abc[] 将匹配名为 abc) 的文件 。 请注意, 在 Windows 上, \ 和 / 都被视为目录分隔符,但 Linux 上只有 /。 在应用模式之前,将扩展 Windows 上 (%var% 的环境变量或 Linux) 上的$var。

uploadOptions

OutputFileUploadOptions

上传操作的其他选项,包括在什么条件下执行上传。

OutputFileBlobContainerDestination

指定 Azure Blob 存储容器中的文件上传目标。

名称 类型 说明
containerUrl

string

要将文件上传到Azure Blob 存储中的容器的 URL, () 。
如果不使用托管标识,URL 必须包含共享访问签名 (SAS) 向容器授予写入权限。

identityReference

ComputeNodeIdentityReference

对用户分配的标识的引用,用于访问 containerUrl 指定的Azure Blob 存储
标识必须对 Azure Blob 存储 容器具有写入访问权限

path

string

Azure 存储容器中的目标 Blob 或虚拟目录。
如果 filePattern 引用特定文件 (即不包含任何通配符) ,则 path 是要向其上传该文件的 Blob 的名称。 如果 filePattern (包含一个或多个通配符,因此可能与多个文件) 匹配,则 path 是 blob 虚拟目录 (前面附加在每个 blob 名称) () 。 如果省略,则文件 () 上传到容器的根目录,其 Blob 名称与其文件名匹配。

uploadHeaders

HttpHeader[]

要在上传输出文件时使用的标头的名称/值对列表
将文件上传到 Azure 存储时,将指定这些标头。 上传 Blob 时允许的标头的官方文档: https://docs.microsoft.com/en-us/rest/api/storageservices/put-blob#request-headers-all-blob-types

OutputFileDestination

文件应上传到的目标。

名称 类型 说明
container

OutputFileBlobContainerDestination

将文件上传到 Azure Blob 存储中的位置。

OutputFileUploadCondition

应上传任务输出文件或文件集的条件。

名称 类型 说明
taskcompletion

string

无论退出代码是什么,在任务进程退出后, () 上传文件。

taskfailure

string

仅当任务进程退出并显示非零退出代码后,才将文件 () 上传。

tasksuccess

string

仅在任务进程退出且退出代码为 0 后,才将文件 () 上传。

OutputFileUploadOptions

有关输出文件上传操作的详细信息,包括在什么条件下执行上传。

名称 类型 说明
uploadCondition

OutputFileUploadCondition

应上传 Task 输出文件或文件集的条件。
默认值为 taskcompletion。

ResourceFile

要下载到计算节点的单个文件或多个文件。

名称 类型 说明
autoStorageContainerName

string

自动存储帐户中的存储容器名称。
autoStorageContainerName、storageContainerUrl 和 httpUrl 属性互斥,必须指定其中一个属性。

blobPrefix

string

从 Azure 存储容器下载 Blob 时要使用的 blob 前缀。 仅下载名称以指定前缀开头的 Blob。
仅当使用 autoStorageContainerName 或 storageContainerUrl 时,属性才有效。 此前缀可以是部分文件名或子目录。 如果未指定前缀,则将下载容器中的所有文件。

fileMode

string

八进制格式的文件权限模式属性。
此属性仅适用于下载到 Linux 计算节点的文件。 如果为将下载到 Windows 计算节点的 resourceFile 指定了它,则会忽略它。 如果未为 Linux 计算节点指定此属性,则对文件应用默认值 0770。

filePath

string

计算节点上要下载文件的位置 () ,相对于任务的工作目录。
如果指定了 httpUrl 属性,则 filePath 是必需的,并描述文件将下载到的路径,包括文件名。 否则,如果指定 autoStorageContainerName 或 storageContainerUrl 属性,则 filePath 是可选的,并且是将文件下载到的目录。 如果 filePath 用作目录,则已与输入数据关联的任何目录结构都将完全保留并追加到指定的 filePath 目录。 指定的相对路径不能从 Task 的工作目录 (中断,例如使用“.”。) 。

httpUrl

string

要下载的文件的 URL。
autoStorageContainerName、storageContainerUrl 和 httpUrl 属性互斥,必须指定其中一个属性。 如果 URL 指向 Azure Blob 存储,则它必须可从计算节点中读取。 可通过三种方式获取 Azure 存储中的 blob 的此类 URL:包括共享访问签名 (SAS) 授予对 blob 的读取权限、使用具有读取权限的托管标识,或者为 Blob 或其容器设置 ACL 以允许公共访问。

identityReference

ComputeNodeIdentityReference

对用户分配的标识的引用,用于访问 storageContainerUrl 或 httpUrl 指定的Azure Blob 存储
对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

storageContainerUrl

string

Azure Blob 存储 中的 Blob 容器的 URL。
autoStorageContainerName、storageContainerUrl 和 httpUrl 属性互斥,必须指定其中一个属性。 此 URL 必须可读且可从计算节点列出。 可通过三种方式在 Azure 存储中为容器获取此类 URL:包括共享访问签名 (SAS) 授予对容器的读取和列出权限、使用具有读取和列出权限的托管标识,或将容器的 ACL 设置为允许公共访问。

TaskConstraints

要应用于 Task 的执行约束。

名称 类型 说明
maxTaskRetryCount

integer

可以重试任务的最大次数。 如果任务退出代码为非零,Batch 服务会重试任务。
请注意,此值专门控制由于非零退出代码而导致 Task 可执行文件的重试次数。 Batch 服务将尝试一次任务,然后可能会重试到此限制。 例如,如果最大重试计数为 3,则 Batch 在首次尝试 (最多尝试 4 次 Task,) 重试 3 次。 如果最大重试计数为 0,则 Batch 服务不会在第一次尝试后重试 Task。 如果最大重试计数为 -1,Batch 服务将无限制地重试任务,但不建议对启动任务或任何任务执行此操作。 默认值为 0(不重试)。

maxWallClockTime

string

任务可能运行的最大已用时间,从任务启动时间开始计算。 如果任务未在时间限制内完成,Batch 服务将终止它。
如果未指定此项,则任务可以运行的时间没有时间限制。

retentionTime

string

在运行任务节点的计算节点上保留 Task 目录的最短时间,从它完成执行时算起。 在此之后,Batch 服务可能会删除 Task 目录及其所有内容。
默认值为 7 天,即任务目录将保留 7 天,除非删除计算节点或删除作业。

TaskContainerExecutionInformation

包含有关任务正在执行的容器的信息。

名称 类型 说明
containerId

string

容器的 ID。

error

string

有关容器的详细错误信息。
这是 Docker 服务的详细错误字符串(如果可用)。 它等效于“docker inspect”返回的错误字段。

state

string

容器的状态。
这是容器的状态(根据 Docker 服务)。 它等效于“docker inspect”返回的状态字段。

TaskContainerSettings

任务的容器设置。

名称 类型 说明
containerRunOptions

string

容器创建命令的其他选项。
除了 Batch 服务控制的选项外,这些附加选项还作为参数提供给“docker create”命令。

imageName

string

用于创建运行 Task 的容器的映像。
这是完整的映像引用,将指定为“docker 拉取”。 如果未提供任何标记作为映像名称的一部分,则使用标记“:latest”作为默认值。

registry

ContainerRegistry

包含容器映像的专用注册表。
如果已在创建池时提供此设置,则可以省略此设置。

workingDirectory

ContainerWorkingDirectory

容器任务工作目录的位置。
默认值为“taskWorkingDirectory”。

TaskDependencies

指定 Task 的任何依赖项。 显式指定或依赖关系范围内的任何任务都必须完成,然后才能计划从属任务。

名称 类型 说明
taskIdRanges

TaskIdRange[]

此任务所依赖的任务 ID 范围的列表。 所有范围中的所有任务都必须成功完成,然后才能计划从属任务。

taskIds

string[]

此任务所依赖的任务 ID 列表。 此列表中的所有任务必须成功完成,然后才能计划依赖的任务。
taskIds 集合的总长度限制为 64000 个字符, (即) 的所有任务 ID 的组合长度。 如果 taskIds 集合超过最大长度,则添加任务请求将失败,错误代码为 TaskDependencyListTooLong。 在这种情况下,请考虑改用任务 ID 范围。

TaskExecutionInformation

有关任务执行的信息。

名称 类型 说明
containerInfo

TaskContainerExecutionInformation

有关执行 Task 的容器的信息。
仅当 Task 在容器上下文中运行时,才会设置此属性。

endTime

string

任务完成的时间。
仅当 Task 处于“已完成”状态时,才会设置此属性。

exitCode

integer

Task 命令行上指定的程序的退出代码。
仅当 Task 处于已完成状态时,才会设置此属性。 通常,进程的退出代码反映了应用程序开发人员为该过程实现的特定约定。 如果使用退出代码值在代码中做出决策,请确保知道应用程序进程使用的退出代码约定。 但是,如果 Batch 服务因超时或用户通过 API 终止任务 () 你可能会看到操作系统定义的退出代码。

failureInfo

TaskFailureInformation

描述任务失败的信息(如果有)。
仅当 Task 处于已完成状态并遇到失败时,才会设置此属性。

lastRequeueTime

string

Batch 服务根据用户请求重新排队任务的最新时间。
仅当 requeueCount 为非零时,才会设置此属性。

lastRetryTime

string

任务重试开始运行的最新时间。
仅当已重试 Task (即 retryCount 为非零) 时,此元素才存在。 如果存在,这通常与 startTime 相同,但如果任务因重试以外的原因而重新启动,则可能会有所不同;例如,如果在重试期间重新启动了计算节点,则 startTime 会更新,但 lastRetryTime 不会更新。

requeueCount

integer

Batch 服务因用户请求而重新排队任务的次数。
当用户通过重设池) 大小/收缩池从池 (中删除计算节点时,或者禁用作业时,用户可以指定重新排队计算节点上运行的任务以执行。 此计数跟踪由于这些原因重新排队任务的次数。

result

TaskExecutionResult

任务执行的结果。
如果值为“failed”,则可以在 failureInfo 属性中找到失败的详细信息。

retryCount

integer

Batch 服务重试 Task 的次数。
重试任务应用程序失败 (非零退出代码) ,) 无法运行任务 (预处理错误,并且不会重试文件上传错误。 Batch 服务将重试任务,最大限制为约束指定的限制。

startTime

string

任务开始运行的时间。
“正在运行”对应于运行状态,因此,如果 Task 指定资源文件或包,则开始时间反映任务开始下载或部署这些文件的时间。 如果任务已重启或重试,则这是任务开始运行的最新时间。 此属性仅适用于处于正在运行或已完成状态的任务。

TaskExecutionResult

任务执行的结果。

名称 类型 说明
failure

string

处理任务时出错。 失败可能发生在任务进程启动之前、任务进程正在执行或任务进程退出之后。

success

string

任务已成功运行。

TaskFailureInformation

有关任务失败的信息。

名称 类型 说明
category

ErrorCategory

任务错误的类别。

code

string

任务错误的标识符。 代码是固定的,旨在以编程方式使用。

details

NameValuePair[]

与错误相关的其他详细信息的列表。

message

string

描述任务错误的消息,旨在适合在用户界面中显示。

TaskIdRange

任务可以依赖的任务 ID 范围。 在计划依赖任务之前,必须成功完成该范围中 ID 的所有任务。

名称 类型 说明
end

integer

范围中的最后一个任务 ID。

start

integer

范围中的第一个任务 ID。

TaskState

任务的状态。

名称 类型 说明
active

string

任务已排队并能够运行,但当前未分配给计算节点。 任务在创建时、禁用后启用或失败运行后等待重试时进入此状态。

completed

string

任务不再有资格运行,通常是因为任务已成功完成,或者任务已完成失败并已用完重试限制。 如果启动任务时出错或任务已终止,则任务也会标记为已完成。

preparing

string

任务已分配给计算节点,但正在等待计算节点上完成所需的作业准备任务。 如果作业准备任务成功,则任务将移动到正在运行。 如果作业准备任务失败,该任务将返回到活动状态,并有资格分配到其他计算节点。

running

string

任务在计算节点上运行。 这包括任务级别的准备,例如下载资源文件或部署 Task 上指定的包 - 这不一定意味着任务命令行已开始执行。

TaskStatistics

任务的资源使用情况统计信息。

名称 类型 说明
kernelCPUTime

string

任务) 所有核心和所有计算节点的总内核模式 CPU 时间 (总和。

lastUpdateTime

string

上次更新统计信息的时间。 所有统计信息仅限于 startTime 和 lastUpdateTime 之间的范围。

readIOGiB

number

任务从磁盘中读取的总吉字节数。

readIOps

integer

任务进行的磁盘读取操作总数。

startTime

string

统计信息所涵盖的时间范围的开始时间。

url

string

统计信息的 URL。

userCPUTime

string

任务) 使用的所有核心和所有计算节点的总用户模式 CPU 时间 (总和。

waitTime

string

任务的总等待时间。 任务的等待时间定义为从创建任务到开始执行任务之间的已用时间。 (如果由于失败而重试任务,则等待时间是最近的任务执行时间。)

wallClockTime

string

任务的总时钟时间。
挂钟时间是从任务开始在计算节点上运行到完成 (或上次更新统计信息的时间(如果任务尚未完成),则) 。 如果重试任务,这包括所有任务重试的时钟时间。

writeIOGiB

number

任务写入磁盘的总 Gibibytes。

writeIOps

integer

任务进行的磁盘写入操作的总数。

UserIdentity

运行任务时所依据的用户标识的定义。

名称 类型 说明
autoUser

AutoUserSpecification

运行任务的自动用户。
userName 和 autoUser 属性是互斥的;必须指定一个,但不能同时指定两者。

username

string

运行任务时所依据的用户标识的名称。
userName 和 autoUser 属性是互斥的;必须指定一个,但不能同时指定两者。