Questa pagina descrive come gestire il ciclo di vita di un'API Financial Services un'operazione a lunga esecuzione (LRO).
Le operazioni a lunga esecuzione vengono restituite quando il metodo
il completamento delle chiamate potrebbe richiedere molto tempo. Ad esempio, l'API Financial Services
crea un LRO ogni volta che chiami
projects.locations.instances.create
L'LRO monitora lo stato del job di elaborazione.
Puoi utilizzare i metodi projects.locations.operations
fornita dall'API Financial Services per controllare lo stato di
LRO Puoi anche elencare, annullare o
o elimina gli LRO.
Gli LRO vengono gestiti a livello di progetto e località Google Cloud. Quando effettui una richiesta all'API, includi il progetto Google Cloud e della località in cui viene eseguito l'LRO.
Il registro di un LRO viene conservato per circa 30 giorni dopo l'LRO finiture in cui sono finite. Non potrai visualizzare o elencare un LRO successivamente.
Visualizza i dettagli di un'operazione a lunga esecuzione
Supponi di aver creato un'istanza.
Il valore name
nella risposta indica che l'API Financial Services
ha creato un LRO denominato projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
.
Utilizza la
projects.locations.operations.get
per verificare se l'istanza è stata creata. Se la risposta contiene
"done": false
, ripeti il comando fino a quando la risposta non contiene "done": true
.
Questa operazione può richiedere alcuni minuti.
Puoi anche recuperare il nome LRO elenca le operazioni a lunga esecuzione.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_ID
: il tuo ID progetto Google Cloud elencato nella sezione Impostazioni IAMLOCATION
: la località dell'istanza; usa uno dei seguenti il regioni supportateMostra localitàus-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
OPERATION_ID
: identificatore dell'operazione
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata", "createTime": "2023-03-14T15:52:55.358979323Z", "endTime": "2023-03-14T16:52:55.358979323Z", "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.financialservices.v1.Instance", "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "state": "ACTIVE", "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID" } }
Elenca operazioni a lunga esecuzione
Utilizza la
projects.locations.operations.list
per elencare tutte le operazioni in una determinata posizione.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_ID
: il tuo ID progetto Google Cloud elencato in le impostazioni IAMLOCATION
: la località delle operazioni; usa uno dei regioni supportateMostra localitàus-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "operations": [ { "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata", "createTime": "2023-03-14T15:52:55.358979323Z", "endTime": "2023-03-14T16:52:55.358979323Z", "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/engineConfigs/ENGINE_CONFIG_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }, { "name": "projects/PROJECT_ID/locations/LOCATION/operations/my-other-operation", "metadata": { "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata", "createTime": CREATE_TIME, "endTime": END_TIME, "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.financialservices.v1.Instance", "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "state": "ACTIVE", "kmsKey": "projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID" } } ] }
Annullare un'operazione a lunga esecuzione
Utilizza la
projects.locations.operations.cancel
per avviare la cancellazione asincrona su un'operazione a lunga esecuzione. La
il server fa il possibile per annullare l'operazione, ma il successo
garantito.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_ID
: il tuo ID progetto Google Cloud elencato in le impostazioni IAMLOCATION
: la località dell'operazione; usa uno dei regioni supportateMostra localitàus-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
OPERATION_ID
: identificatore dell'operazione
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID:cancel"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID:cancel" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{}
Elimina un'operazione a lunga esecuzione
Utilizza la
projects.locations.operations.delete
per eliminare un'operazione a lunga esecuzione completata. Questo metodo indica che
il cliente non è più interessato al risultato dell'operazione. Non annulla
l'operazione.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_ID
: il tuo ID progetto Google Cloud elencato in le impostazioni IAMLOCATION
: la località dell'operazione; usa uno dei regioni supportateMostra localitàus-central1
us-east1
asia-south1
europe-west1
europe-west2
europe-west4
northamerica-northeast1
southamerica-east1
OPERATION_ID
: identificatore dell'operazione
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{}