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 accesso in anteprima.
Gli ordini di lavoro di Livello 2 vengono gestiti a livello di Google Cloud progetto e località. Quando effettui una richiesta all'API, includi il Google Cloud progetto e la località 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 tuo Google Cloud numero di progetto, che si trova nel campo Numero progetto nella pagina Impostazioni IAM.LOCATION: la posizione dei dati. Utilizza una delle regioni supportateMostra sedius-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-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, ricevi 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 Google Cloud del progetto, che si trova nel campo Numero progetto della pagina Impostazioni IAMLOCATION: la località delle operazioni; utilizza una delle regioni supportateMostra sedius-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-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 di lunga durata, 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 Google Cloud del progetto, che si trova nel campo Numero progetto della pagina Impostazioni IAMLOCATION: la località dell'operazione; utilizza una delle regioni supportateMostra sedius-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-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 un'operazione di lunga durata 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 Google Cloud del progetto, che si trova nel campo Numero progetto della pagina Impostazioni IAMLOCATION: la località dell'operazione; utilizza una delle regioni supportateMostra sedius-central1us-east1us-west1asia-east1asia-south1asia-southeast1europe-west1southamerica-east1
OPERATION_ID: l'identificatore dell'operazione
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere un oggetto JSON vuoto come risposta:
{}