Gerenciar operações de longa duração

Nesta página, descrevemos como gerenciar o ciclo de vida de uma API Live Stream Operação de longa duração (LRO, na sigla em inglês).

Operações de longa duração são retornadas quando o método chamadas podem levar muito tempo para serem concluídas. Por exemplo, a API Live Stream cria uma LRO toda vez que você chama projects.locations.inputs.create A LRO rastreia o status do job de processamento.

Use os métodos projects.locations.operations. que a API Live Stream fornece para verificar o status de LROs, Também é possível listar, cancelar, ou excluir LROs.

As LROs são gerenciadas no nível do projeto e do local do Google Cloud. Ao fazer uma solicitação para a API, inclua o projeto do Google Cloud e o local em que ela é executada.

O registro de uma LRO é mantido por, aproximadamente, 30 dias após a conclusão da LRO. Isso significa que não é possível visualizar ou listar uma LRO após esse período.

Receber detalhes sobre uma operação de longa duração

Suponha que você criou um endpoint de entrada. O valor name na resposta mostra que a API Live Stream criou uma LRO chamada projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID.

Para verificar se o endpoint de entrada foi criado, use o projects.locations.operations.get . Se a resposta contiver "done": false, repita o comando até que o resposta contém "done": true. Essa operação pode levar alguns minutos para concluído.

Também é possível recuperar o nome da LRO listando operações de longa duração.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_NUMBER: seu projeto do Google Cloud número; ele está localizado no campo Número do projeto da Página Configurações do IAM
  • LOCATION: o local onde está o endpoint de entrada. localizada; usar uma das regiões com suporte;
    Mostrar locais
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • OPERATION_ID: o identificador da operação.

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "endTime": END_TIME,
    "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.video.livestream.v1.Input",
    "name": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID",
    "createTime": CREATE_TIME,
    "updateTime": UPDATE_TIME,
    "type": "RTMP_PUSH",
    "uri":  INPUT_STREAM_URI, # For example, "rtmp://1.2.3.4/live/b8ebdd94-c8d9-4d88-a16e-b963c43a953b",
    "tier": "HD"
  }
}

Listar operações de longa duração

Para listar todas as operações em um determinado local, use o método projects.locations.operations.list .

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_NUMBER: seu projeto do Google Cloud número; ele está localizado no campo Número do projeto da Página Configurações do IAM
  • LOCATION: o local das operações. usar uma das regiões com suporte;
    Mostrar locais
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "operations": [
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.livestream.v1.OperationMetadata",
        "createTime": CREATE_TIME,
        "endTime": END_TIME,
        "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_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.livestream.v1.OperationMetadata",
        "createTime": CREATE_TIME,
        "endTime": END_TIME,
        "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/my-other-input",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.livestream.v1.Input",
        "name": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/my-other-input",
        "createTime": CREATE_TIME,
        "updateTime": UPDATE_TIME,
        "type": "RTMP_PUSH",
        "uri":  INPUT_STREAM_URI,
        "tier": "HD"
      }
    }
  ]
}

Cancelar uma operação de longa duração

Para iniciar o cancelamento assíncrono em uma operação de longa duração, use o projects.locations.operations.cancel . O servidor faz o possível para cancelar a operação, mas o sucesso é não são garantidos.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_NUMBER: seu projeto do Google Cloud número; ele está localizado no campo Número do projeto da Página Configurações do IAM
  • LOCATION: o local da operação. usar uma das regiões com suporte;
    Mostrar locais
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • OPERATION_ID: o identificador da operação.

Para enviar a solicitação, expanda uma destas opções:

Você receberá um objeto JSON vazio como a resposta:
{}

Excluir uma operação de longa duração

Para excluir uma operação concluída de longa duração, use o projects.locations.operations.delete . Esse método indica que o cliente não está mais interessado no resultado da operação. Ele não cancela a operação.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_NUMBER: seu projeto do Google Cloud número; ele está localizado no campo Número do projeto da Página Configurações do IAM
  • LOCATION: o local da operação. usar uma das regiões com suporte;
    Mostrar locais
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • OPERATION_ID: o identificador da operação.

Para enviar a solicitação, expanda uma destas opções:

Você receberá um objeto JSON vazio como a resposta:
{}