Questa pagina descrive come gestire il ciclo di vita di un'operazione a lungo termine (LRO) dell'API Video Stitcher.
Le operazioni a lunga esecuzione vengono restituite quando le chiamate ai metodi potrebbero richiedere molto tempo per essere completate. Ad esempio, l'API Video Stitcher
crea un LRO ogni volta che chiami
projects.locations.liveConfigs.create
.
L'LRO monitora lo stato del job di elaborazione.
Puoi utilizzare i metodi projects.locations.operations
forniti dall'API Video Stitcher per controllare lo stato degli LRO. Puoi anche elencare, annullare o eliminare le richieste di eliminazione.
Le richieste di accesso a livello di organizzazione vengono gestite a livello di progetto e località Google Cloud. Quando effettui una richiesta all'API, includi il progetto Google Cloud e la posizione in cui è in esecuzione l'LRO.
Il record di un'LRO viene conservato per circa 30 giorni dal termine dell'LRO, il che significa che non puoi visualizzare o elencare un'LRO dopo questo periodo.
Visualizzare i dettagli di un'operazione a lunga esecuzione
Supponiamo che tu abbia creato una configurazione live.
Il valore name
nella risposta indica che l'API Video Stitcher
ha creato un'operazione a lunga esecuzione denominata projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID
.
Per verificare se l'endpoint di input è stato creato, utilizza il metodo
projects.locations.operations.get
. Se la risposta contiene "done": false
, ripeti il comando finché la risposta non contiene "done": true
. Il completamento dell'operazione può richiedere alcuni minuti.
Puoi anche recuperare il nome dell'operazione a lunga esecuzione elencando le operazioni a lunga esecuzione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud, che si trova nel campo Numero progetto nella pagina Impostazioni IAM.LOCATION
: la posizione dei dati. Utilizza una delle regioni supportateMostra sedius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: l'identificatore dell'operazione
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "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" } }
Se l'operazione non va a buon fine, riceverai informazioni di errore sotto forma di oggetto error
per aiutarti nella risoluzione dei problemi.
{
"error": {
"code": 404,
"message": "got status code 403 when fetching playlist from URI \"https://example.com/manifest.m3u8\"",
"status": "NOT_FOUND"
}
}
Elenca le operazioni a lunga esecuzione
Per elencare tutte le operazioni in una determinata posizione, utilizza il metodo
projects.locations.operations.list
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud, che si trova nel campo Numero progetto della pagina Impostazioni IAMLOCATION
: la località delle operazioni; utilizza una delle regioni supportateMostra sedius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "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" } } ] }
Annullare un'operazione a lunga esecuzione
Per avviare l'annullamento asincrono di un'operazione a lunga esecuzione, utilizza il metodo
projects.locations.operations.cancel
. Il server fa del suo meglio per annullare l'operazione, ma il risultato positivo non è garantito.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud, che si trova nel campo Numero progetto della pagina Impostazioni IAMLOCATION
: la località dell'operazione; utilizza una delle regioni supportateMostra sedius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: l'identificatore dell'operazione
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere un oggetto JSON vuoto come risposta:{}
Eliminare un'operazione a lunga esecuzione
Per eliminare unoperazione a lunga esecuzione completata, utilizza il metodo
projects.locations.operations.delete
. Questo metodo indica che il cliente non è più interessato al risultato dell'operazione. L'operazione non viene annullata.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud, che si trova nel campo Numero progetto della pagina Impostazioni IAMLOCATION
: la località dell'operazione; utilizza una delle regioni supportateMostra sedius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: l'identificatore dell'operazione
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere un oggetto JSON vuoto come risposta:{}