작업 재대열 이벤트

이 이벤트는 배치가 작업을 다시 대기열에 넣어 다시 스케줄링할 때 발생합니다.

노드 제거, 작업 비활성화 작업(작업 재대기열) 작업 또는 기타 서비스 기반 복구 시나리오와 같은 서비스 작업 후에 작업을 재대기열 처리할 수 있습니다.

재대기열에 저장된 작업이 다시 스케줄링될 때, 배치는 그 후속 시도를 위한 새로운 작업 시작 이벤트를 생성합니다.

다음 예시는 작업 재대기열 이벤트의 본문을 보여줍니다.

{
    "jobId": "myJob",
    "id": "myTask",
    "taskType": "User",
    "systemTaskVersion": 3,
    "requiredSlots": 1,
    "nodeInfo": {
        "poolId": "pool-001",
        "nodeId": "tvm-257509324_1-20160908t162728z"
    },
    "multiInstanceSettings": {
        "numberOfInstances": 1
    },
    "constraints": {
        "maxTaskRetryCount": 2
    },
    "executionInfo": {
        "startTime": "2016-09-08T16:32:23.799Z",
        "endTime": "2016-09-08T16:34:00.666Z",
        "exitCode": 11,
        "retryCount": 0,
        "requeueCount": 1,
        "result": "failure",
        "schedulingError": {
            "category": "UserError",
            "code": "BadCommandType",
            "message": "Task has invalid command",
            "details": [
                {
                    "name": "Reason",
                    "value": "Access denied"
                }
            ]
        }
    }
}

exitCode result schedulingError, 는 배치가 재대기열에 있는 작업에 대한 실행 오류 정보를 가질 때만 채워집니다.

요소 이름 유형 Notes
jobId String 작업이 포함된 작업의 ID입니다.
id String 태스크의 ID입니다.
taskType String 작업의 형식입니다. 이 작업 JobManager 은 작업 관리자 작업임을 나타내거나 User 작업 관리자 작업이 아님을 나타내는 것입니다. 이 이벤트는 작업 준비 작업, 작업 릴리스 작업 또는 시작 작업에 대해 내보내지지 않습니다. 해당 과제에 대해서는 Special task 이벤트를 참조하세요.
systemTaskVersion Int32 작업에 대한 내부 재시도 카운터입니다. 내부적으로 Batch 서비스는 일시적 문제를 고려하기 위해 작업을 다시 시도할 수 있습니다. 이러한 문제에는 내부 일정 오류 또는 잘못된 상태의 컴퓨팅 노드에서 복구하려는 시도가 포함될 수 있습니다.
requiredSlots Int32 작업을 실행하는 데 필요한 슬롯입니다.
nodeInfo 복합 형식 작업이 가장 최근에 실행된 컴퓨트 노드에 대한 정보를 포함합니다.
multiInstanceSettings 복합 형식 태스크가 여러 컴퓨팅 노드가 필요한 다중 인스턴스 태스크임을 지정합니다. 자세한 내용은 multiInstanceSettings를 참조하세요.
constraints 복합 형식 이 작업에 적용되는 실행 제약 조건입니다.
executionInfo 복합 형식 작업이 재대열에 재배치될 때 캡처된 실행 상태에 대한 정보를 포함합니다.

nodeInfo

요소 이름 유형 Notes
poolId String 최근에 과제가 진행된 풀의 ID였다.
nodeId String 작업이 가장 최근에 실행된 노드의 ID입니다.

multiInstanceSettings

요소 이름 유형 Notes
numberOfInstances Int32 태스크에 필요한 컴퓨팅 노드 수입니다.

제약 조건

요소 이름 유형 Notes
maxTaskRetryCount Int32 작업을 다시 시도될 수 있는 최대 횟수입니다. Batch 서비스는 종료 코드가 0이 아닌 경우 작업을 다시 시도합니다.

이 값은 특히 재시도 횟수를 제어합니다. Batch 서비스는 작업을 한 번 시도한 다음 이 제한까지 다시 시도할 수 있습니다. 예를 들어 최대 재시도 횟수가 3인 경우 Batch는 최대 4회(초기 시도 1회, 재시도 3회)를 시도합니다.

최대 재시도 횟수가 0이면 Batch 서비스는 작업을 다시 시도하지 않습니다.

최대 재시도 횟수가 -1이면 Batch 서비스는 제한 없이 작업을 다시 시도합니다.

기본값은 0(재시도 안 됨)입니다.

실행정보

요소 이름 유형 Notes
startTime 날짜/시간 작업이 가장 최근에 실행되기 시작한 시점, 그리고 다시 대기열에 들어간 시간입니다. 만약 과제가 시작되지 않았다면, 이 필드는 생략될 수 있습니다.
endTime 날짜/시간 작업이 가장 최근에 실행을 멈춘 후 다시 대기열에 들어간 시간입니다. 만약 과제가 시작되지 않았다면, 이 필드는 생략될 수 있습니다.
exitCode Int32 배치가 보고할 작업 중 가장 최근 작업 실행 종료 코드입니다. 그렇지 않으면 이 필드는 생략됩니다.
retryCount Int32 Batch 서비스에서 작업을 다시 시도한 횟수입니다. 작업이 종료 코드가 0이 아니면 지정된 최대 작업 재시도 횟수 내에서 재시도됩니다.
requeueCount Int32 배치 서비스가 작업을 다시 대기열에 넣은 횟수입니다. 현재 방출된 페이로드에서 이 필드는 해당 작업에 대한 서비스의 현재 재큐 카운터를 반영합니다.
result String 작업 가능한 경우 서비스 정의 결과 문자열입니다.
schedulingError 복합 형식 보고된 오류에 대한 상세한 정보가 있다면, 해당 정보가 있습니다.

schedulingError

요소 이름 유형 Notes
category String 예를 들어 UserError오류 범주 .
code String 예를 BadCommandType들어 오류 코드 .
message String 오류 메시지입니다.
details 배열 오류에 대한 더 자세한 정보를 제공하는 이름-값 쌍 목록입니다. 추가 세부 정보가 없으면 배열은 비어 있습니다.

details

요소 이름 유형 Notes
name String 세부 이름.
value String 세부 사항의 가치.