이 페이지에서는 Video Stitcher API 장기 실행 작업(LRO)의 수명 주기를 관리하는 방법을 설명합니다.
메서드 호출이 완료되는 데 오래 걸릴 수 있으면 장기 실행 작업이 반환됩니다. 예를 들어 Video Stitcher API는 projects.locations.liveConfigs.create를 호출할 때마다 LRO를 만듭니다.
LRO는 처리 작업의 상태를 추적합니다.
Video Stitcher API가 제공하는 projects.locations.operations 메서드를 사용하여 LRO 상태를 확인할 수 있습니다. LRO를 나열, 취소 또는 삭제도 할 수 있습니다.
LRO는 Google Cloud 프로젝트 및 위치 수준에서 관리됩니다. API에 요청을 수행할 때는 Google Cloud 프로젝트 및 LRO가 실행되는 위치를 포함하세요.
LRO 레코드는 LRO가 완료된 후 약 30일 동안 유지됩니다. 이후에는 LRO를 보거나 나열할 수 없습니다.
장기 실행 작업에 대한 세부정보 가져오기
실시간 구성을 만들었다고 가정해 보겠습니다.
응답의 name 값은 Video Stitcher API가 projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID라는 LRO를 만들었음을 보여줍니다.
입력 엔드포인트가 생성되었는지 확인하려면 projects.locations.operations.get 메서드를 사용합니다. 응답에 "done": false가 포함되어 있으면 응답에 "done": true가 포함될 때까지 명령어를 반복합니다. 이 작업은 완료하는 데 몇 분 정도 걸릴 수 있습니다.
또한 장기 실행 작업을 나열하여 LRO를 검색할 수 있습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_NUMBER: Google Cloud 프로젝트 번호입니다. IAM 설정 페이지의 프로젝트 번호 필드에 있습니다.LOCATION: 데이터의 위치입니다. 지원되는 리전 중 하나를 사용합니다.위치 표시us-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-east1
OPERATION_ID: 작업의 식별자
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.common.OperationMetadata",
"createTime": CREATE_TIME,
"endTime": END_TIME,
"target": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID",
"verb": "create",
"cancelRequested": false,
"apiVersion": "v1"
},
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.video.stitcher.v1.LiveConfig",
"name": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID",
"sourceUri": "SOURCE_LIVESTREAM_URI",
"adTagUri": "AD_TAG_URI",
"state": "READY",
"adTracking": "CLIENT",
"defaultSlate": "projects/PROJECT_NUMBER/locations/LOCATION/slates/SLATE_ID",
"stitchingPolicy": "CUT_CURRENT",
"defaultAdBreakDuration": "30s"
}
}
작업에 실패하면 문제 해결에 도움이 되는 error 객체 형식의 오류 정보가 수신됩니다.
{
"error": {
"code": 404,
"message": "got status code 403 when fetching playlist from URI \"https://example.com/manifest.m3u8\"",
"status": "NOT_FOUND"
}
}
장기 실행 작업 나열
지정된 위치의 모든 작업을 나열하려면 projects.locations.operations.list 메서드를 사용합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_NUMBER: Google Cloud 프로젝트 번호입니다. IAM 설정 페이지의 프로젝트 번호 필드에 있습니다.LOCATION: 작업의 위치입니다. 지원되는 리전 중 하나를 사용합니다.위치 표시us-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-east1
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{
"operations": [
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.video.stitcher.v1.OperationMetadata",
"createTime": CREATE_TIME,
"endTime": END_TIME,
"target": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID,
"verb": "create",
"requestedCancellation": false,
"apiVersion": "v1"
},
"done": false
},
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/my-other-operation",
"metadata": {
"@type": "type.googleapis.com/google.cloud.video.stitcher.v1.OperationMetadata",
"createTime": CREATE_TIME,
"endTime": END_TIME,
"target": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/my-other-live-config",
"verb": "create",
"requestedCancellation": false,
"apiVersion": "v1"
},
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.video.stitcher.v1.LiveConfig",
"name": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/my-other-live-config",
"sourceUri": "SOURCE_LIVESTREAM_URI",
"adTagUri": "AD_TAG_URI",
"state": "READY",
"adTracking": "SERVER",
"defaultSlate": "projects/PROJECT_NUMBER/locations/LOCATION/slates/SLATE_ID",
"stitchingPolicy": "CUT_CURRENT",
"defaultAdBreakDuration": "30s"
}
}
]
}
장기 실행 작업 취소
장기 실행 작업에 대한 비동기 취소를 시작하려면 projects.locations.operations.cancel 메서드를 사용합니다. 서버는 작업이 취소되도록 최선을 다하지만 성공한다고 보장되지 않습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_NUMBER: Google Cloud 프로젝트 번호입니다. IAM 설정 페이지의 프로젝트 번호 필드에 있습니다.LOCATION: 작업의 위치입니다. 지원되는 리전 중 하나를 사용합니다.위치 표시us-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-east1
OPERATION_ID: 작업의 식별자
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
빈 JSON 객체가 응답으로 반환됩니다.
{}
장기 실행 작업 삭제
완료된 장기 실행 작업을 삭제하려면 projects.locations.operations.delete 메서드를 사용합니다. 이 메소드는 클라이언트가 작업 결과에 더 이상 관심이 없음을 나타냅니다. 작업을 취소하지는 않습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_NUMBER: Google Cloud 프로젝트 번호입니다. IAM 설정 페이지의 프로젝트 번호 필드에 있습니다.LOCATION: 작업의 위치입니다. 지원되는 리전 중 하나를 사용합니다.위치 표시us-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-east1
OPERATION_ID: 작업의 식별자
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
빈 JSON 객체가 응답으로 반환됩니다.
{}