Esta página descreve como gerir o ciclo de vida de uma operação de longa duração (LRO) da API Live Stream.
As operações de longa duração são devolvidas quando as chamadas de métodos podem demorar muito tempo a serem concluídas. Por exemplo, a API Live Stream cria um LRO sempre que chama projects.locations.inputs.create.
O LRO acompanha o estado da tarefa de processamento.
Pode usar os métodos projects.locations.operations que a API Live Stream oferece para verificar o estado das LROs. Também pode listar, cancelar ou eliminar LROs.
As LROs são geridas ao Google Cloud nível do projeto e da localização. Quando fizer um pedido à API, inclua o Google Cloud projeto e a localização em que a LRO está a ser executada.
O registo de uma LRO é mantido durante aproximadamente 30 dias após a conclusão da LRO, o que significa que não pode ver nem listar uma LRO após esse período.
Veja detalhes acerca de uma operação de longa duração
Suponhamos que criou um ponto final de entrada.
O valor name na resposta mostra que a API Live Stream criou uma LRO denominada projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID.
Para verificar se o ponto final de entrada foi criado, use o método
projects.locations.operations.get. Se a resposta contiver "done": false, repita o comando até que a resposta contenha "done": true. Esta operação pode demorar alguns minutos a ser
concluída.
Também pode obter o nome da LRO listando as operações de longa duração.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION: a localização onde o seu ponto final de entrada está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1us-east4us-west1us-west2northamerica-northeast1southamerica-east1asia-east1asia-east2asia-south1asia-northeast1asia-southeast1australia-southeast1europe-north1europe-west1europe-west2europe-west3europe-west4
OPERATION_ID: o identificador da operação
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{
"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"
}
}
Apresente operações de longa duração
Para listar todas as operações numa determinada localização, use o método
projects.locations.operations.list.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION: a localização das operações; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1us-east4us-west1us-west2northamerica-northeast1southamerica-east1asia-east1asia-east2asia-south1asia-northeast1asia-southeast1australia-southeast1europe-north1europe-west1europe-west2europe-west3europe-west4
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{
"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"
}
}
]
}
Cancele uma operação de longa duração
Para iniciar o cancelamento assíncrono numa operação de longa duração, use o método
projects.locations.operations.cancel. O servidor faz o seu melhor para cancelar a operação, mas o sucesso não é garantido.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION: a localização da operação; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1us-east4us-west1us-west2northamerica-northeast1southamerica-east1asia-east1asia-east2asia-south1asia-northeast1asia-southeast1australia-southeast1europe-north1europe-west1europe-west2europe-west3europe-west4
OPERATION_ID: o identificador da operação
Para enviar o seu pedido, expanda uma destas opções:
Deve receber um objeto JSON vazio como resposta:
{}
Elimine uma operação de longa duração
Para eliminar uma operação de longa duração concluída, use o método
projects.locations.operations.delete. Este método indica que o cliente já não tem interesse no resultado da operação. Não cancela a operação.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION: a localização da operação; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1us-east4us-west1us-west2northamerica-northeast1southamerica-east1asia-east1asia-east2asia-south1asia-northeast1asia-southeast1australia-southeast1europe-north1europe-west1europe-west2europe-west3europe-west4
OPERATION_ID: o identificador da operação
Para enviar o seu pedido, expanda uma destas opções:
Deve receber um objeto JSON vazio como resposta:
{}