Gestione delle operazioni a lunga esecuzione

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 il metodo il completamento delle chiamate potrebbe richiedere molto tempo. 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 o elimina gli LRO.

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 registro di un LRO viene conservato per circa 30 giorni dopo l'LRO non sarà possibile visualizzare o elencare un LRO successivamente.

Visualizza i dettagli di un'operazione a lunga esecuzione

Supponi di aver creato una configurazione attiva. 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 fino a quando la risposta contiene "done": true. Questa operazione può richiedere alcuni minuti completato.

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 sezione Impostazioni IAM pagina
  • LOCATION: la posizione dei dati. Utilizza una delle regioni supportate
    Mostra località
    • us-central1
    • us-east1
    • us-west1
    • asia-east1
    • asia-south1
    • asia-southeast1
    • europe-west1
    • southamerica-east1
  • OPERATION_ID: 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 riesce, riceverai informazioni sull'errore sotto forma di error per facilitare la 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 località, utilizza 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 IAM
  • LOCATION: la località delle operazioni; utilizza una delle regioni supportate
    Sedi dei negozi
    • us-central1
    • us-east1
    • us-west1
    • asia-east1
    • asia-south1
    • asia-southeast1
    • europe-west1
    • southamerica-east1

Per inviare la richiesta, espandi una delle seguenti 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 il possibile per annullare l'operazione, ma l'operazione riesce non è garantito.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_NUMBER: il tuo progetto Google Cloud numero; che si trova nel campo Numero progetto nella Pagina Impostazioni IAM
  • LOCATION: la località dell'operazione; utilizza una delle regioni supportate
    Mostra località
    • us-central1
    • us-east1
    • us-west1
    • asia-east1
    • asia-south1
    • asia-southeast1
    • europe-west1
    • southamerica-east1
  • OPERATION_ID: 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 alla 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 IAM
  • LOCATION: la località dell'operazione; utilizza una delle regioni supportate
    Sedi dei negozi
    • us-central1
    • us-east1
    • us-west1
    • asia-east1
    • asia-south1
    • asia-southeast1
    • europe-west1
    • southamerica-east1
  • OPERATION_ID: identificatore dell'operazione

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere un oggetto JSON vuoto come risposta:
{}