Halaman ini menjelaskan cara mengelola siklus proses Operasi Lama (LRO) Video Stitcher API.
Operasi yang Berjalan Lama ditampilkan saat panggilan metode mungkin memerlukan waktu lama untuk diselesaikan. Misalnya, Video Stitcher API
membuat LRO setiap kali Anda memanggil
projects.locations.liveConfigs.create
.
LRO melacak status tugas pemrosesan.
Anda dapat menggunakan metode projects.locations.operations
yang disediakan Video Stitcher API untuk memeriksa status
LRO. Anda juga dapat mencantumkan, membatalkan, atau menghapus LRO.
LRO dikelola di level lokasi dan project Google Cloud. Saat membuat permintaan ke API, sertakan project Google Cloud dan lokasi tempat LRO dijalankan.
Catatan LRO disimpan selama sekitar 30 hari setelah LRO selesai, yang berarti Anda tidak dapat melihat atau mencantumkan LRO setelah itu.
Mendapatkan detail tentang operasi yang berjalan lama
Misalnya Anda membuat konfigurasi live.
Nilai name
dalam respons menunjukkan bahwa Video Stitcher API
membuat LRO bernama projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID
.
Untuk memeriksa apakah endpoint input telah dibuat, gunakan
metode
projects.locations.operations.get
. Jika respons berisi "done": false
, ulangi perintah hingga
respons berisi "done": true
. Operasi ini dapat memerlukan waktu beberapa menit hingga selesai.
Anda juga dapat mengambil nama LRO dengan mencantumkan operasi yang berjalan lama.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_NUMBER
: nomor project Google Cloud Anda; nomor ini berada di kolom Nomor project di halaman Setelan IAMLOCATION
: lokasi data; gunakan salah satu region yang didukungTampilkan lokasius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: ID untuk operasi
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{ "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" } }
Jika operasi gagal, Anda akan menerima informasi error dalam bentuk objek error
untuk membantu dalam pemecahan masalah.
{
"error": {
"code": 404,
"message": "got status code 403 when fetching playlist from URI \"https://example.com/manifest.m3u8\"",
"status": "NOT_FOUND"
}
}
Membuat daftar operasi yang berjalan lama
Untuk mencantumkan semua operasi di lokasi tertentu, gunakan
metode
projects.locations.operations.list
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_NUMBER
: nomor project Google Cloud Anda; nomor ini berada di kolom Nomor project pada halaman Setelan IAMLOCATION
: lokasi operasi; gunakan salah satu wilayah yang didukungTampilkan lokasius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{ "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" } } ] }
Membatalkan operasi yang berjalan lama
Untuk memulai pembatalan asinkron pada operasi yang berjalan lama, gunakan
metode
projects.locations.operations.cancel
. Server berusaha sebaik mungkin untuk membatalkan operasi, tetapi keberhasilan
tidak dijamin.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_NUMBER
: nomor project Google Cloud Anda; nomor ini berada di kolom Nomor project pada halaman Setelan IAMLOCATION
: lokasi operasi; gunakan salah satu wilayah yang didukungTampilkan lokasius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: ID untuk operasi
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima objek JSON kosong sebagai respons:{}
Menghapus operasi yang berjalan lama
Untuk menghapus operasi selesai yang berjalan lama, gunakan
metode
projects.locations.operations.delete
. Metode ini menunjukkan bahwa klien tidak lagi tertarik dengan hasil operasi. Metode tersebut tidak membatalkan operasi.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_NUMBER
: nomor project Google Cloud Anda; nomor ini berada di kolom Nomor project pada halaman Setelan IAMLOCATION
: lokasi operasi; gunakan salah satu wilayah yang didukungTampilkan lokasius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: ID untuk operasi
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima objek JSON kosong sebagai respons:{}