Cette page explique comment gérer le cycle de vie d'une API Video Stitcher Opération de longue durée (LRO).
Les opérations de longue durée sont renvoyées lorsque la méthode
les appels peuvent
prendre beaucoup de temps. Par exemple, l'API Video Stitcher
crée une opération de longue durée
chaque fois que vous appelez
projects.locations.liveConfigs.create
L'opération de longue durée suit l'état du job de traitement.
Vous pouvez vérifier l'état des opérations de longue durée à l'aide des méthodes projects.locations.operations
fournies par l'API Video Stitcher. Vous pouvez également répertorier, annuler ou supprimer des opérations de longue durée.
Les opérations de longue durée sont gérées au niveau du projet Google Cloud et de l'emplacement. Lorsque vous envoyez une requête à l'API, incluez le projet Google Cloud et l'emplacement d'exécution de l'opération de longue durée.
L'enregistrement associé à une opération de longue durée est conservé pendant environ 30 jours après son exécution, ce qui signifie que vous ne pouvez pas afficher ni répertorier une opération de longue durée après cette date.
Obtenir des informations sur une opération de longue durée
Supposons que vous ayez créé une configuration en direct.
La valeur name
dans la réponse indique que l'API Video Stitcher a créé une opération de longue durée appelée projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID
.
Pour vérifier si le point de terminaison d'entrée a été créé, utilisez la méthode projects.locations.operations.get
. Si la réponse contient "done": false
, répétez la commande jusqu'à ce qu'elle contienne "done": true
. Cette opération peut prendre quelques minutes.
Vous pouvez également obtenir le nom de l'opération en répertoriant les opérations de longue durée.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
PROJECT_NUMBER
: numéro de votre projet Google Cloud celui-ci se trouve dans le champ Numéro du projet des paramètres IAM pageLOCATION
: emplacement des données utilisez l'une des régions disponibles.Afficher les lieuxus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: identifiant de l'opération.
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "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" } }
Si l'opération échoue, vous recevez des informations sur l'erreur sous la forme d'un error
pour faciliter le dépannage.
{
"error": {
"code": 404,
"message": "got status code 403 when fetching playlist from URI \"https://example.com/manifest.m3u8\"",
"status": "NOT_FOUND"
}
}
Répertorier les opérations de longue durée
Pour répertorier toutes les opérations d'un emplacement donné, utilisez la méthode
projects.locations.operations.list
.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
PROJECT_NUMBER
: votre projet Google Cloud numéro ; celui-ci est indiqué dans le champ Numéro du projet Page Paramètres IAMLOCATION
: emplacement des opérations. Utilisez l'une des régions disponibles.Afficher les emplacementsus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "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" } } ] }
Annuler une opération de longue durée
Pour démarrer l'annulation asynchrone sur une opération de longue durée, utilisez la méthode projects.locations.operations.cancel
. Le serveur fait de son mieux pour annuler l'opération, mais l'opération réussit
non garanti.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
PROJECT_NUMBER
: numéro de votre projet Google Cloud, qui se trouve dans le champ Numéro de projet sur la page Paramètres IAM.LOCATION
: emplacement de l'opération. utilisez l'une des régions disponibles.Afficher les lieuxus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: identifiant de l'opération.
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir un objet JSON vide en réponse :{}
Supprimer une opération de longue durée
Pour supprimer une opération de longue durée terminée, utilisez la méthode
projects.locations.operations.delete
. Cette méthode indique que le client n'est plus intéressé par
résultat de l'opération. Elle n'annule pas l'opération.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
PROJECT_NUMBER
: votre projet Google Cloud numéro ; celui-ci est indiqué dans le champ Numéro du projet Page Paramètres IAMLOCATION
: emplacement de l'opération. utilisez l'une des régions disponibles.Afficher les emplacementsus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
OPERATION_ID
: identifiant de l'opération.
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir un objet JSON vide en réponse :{}