Richieste di lavoro asincrone

Questo argomento descrive le richieste di lavoro asincrone per le operazioni con tempi di esecuzione lunghi sui servizi Oracle Cloud Infrastructure. Fornisce inoltre indicazioni su come ottenere lo stato della richiesta e su come ispezionare la risposta della richiesta per abilitare il filtro per le risorse interessate.

Panoramica

Le chiamate API ai servizi Oracle Cloud Infrastructure possono avviare operazioni con tempi di esecuzione lunghi che non completano la richiesta del client prima che venga restituita una risposta. In questi casi, il servizio genera una richiesta di lavoro asincrona che consente la visibilità sullo stato di avanzamento delle operazioni asincrone con tempi di esecuzione lunghi. La risposta alla chiamata API REST contiene un ID richiesta di lavoro nell'intestazione opc-work-request-id, che consente di monitorarne l'avanzamento e lo stato. La richiesta di lavoro rimane in coda fino al completamento dell'operazione.

È possibile monitorare lo stato della richiesta di lavoro in qualsiasi momento chiamando GetWorkRequest e passando l'ID della richiesta di lavoro.

Nota

Alcuni servizi Oracle Cloud Infrastructure, come Compute e Database, supportano le richieste di lavoro utilizzando l'API delle richieste di lavoro, che contiene l'operazione GetWorkRequest.

Alcuni servizi offrono richieste di lavoro supportate dall'API del servizio anziché dall'API Richieste di lavoro descritta in questo argomento. Ciascuna di queste API di servizio include operazioni che funzionano in modo simile all'operazione GetWorkRequest utilizzata dall'API delle richieste di lavoro.

Per i dettagli, consultare la documentazione di riferimento per l'API delle richieste di lavoro di ciascun servizio. I collegamenti a ciascuno sono disponibili nella sezione Per ulteriori informazioni.

Due caratteristiche della risposta alla richiesta sono di particolare interesse: lo stato della richiesta di lavoro e un elenco delle risorse interessate dalla richiesta di lavoro. Lo stato è importante perché le richieste di lavoro asincrone devono sapere quando un'operazione è stata completata, è ancora in esecuzione o se non è riuscita del tutto.

Per recuperare informazioni su errori o errori delle richieste di lavoro, ogni servizio fornisce API per il recupero di informazioni su errori e log. Per i collegamenti alla documentazione di riferimento API per ciascuno dei servizi, vedere la sezione Per ulteriori informazioni.

Importante anche nei casi in cui un'operazione di richiesta di lavoro influisce su diverse risorse è avere un elenco delle risorse interessate da una richiesta di lavoro, insieme agli attributi entityType e actionType di ognuno.

Stato della richiesta di lavoro

Le richieste di lavoro asincrone consentono di monitorare lo stato di avanzamento fornendo un attributo di stato sull'oggetto WorkRequest. Ciascuno dei servizi supportati fornisce la propria API per ottenere lo stato, come indicato nelle sezioni seguenti.

Nota

È disponibile una classe ContainerEngineWaiters che consente di creare un callback utilizzando il metodo forWorkRequest. Utilizzare questa API per inoltrare una notifica quando lo stato di un'operazione cambia, ad esempio da IN_PROGRESS a COMPLETED.

Nella tabella seguente sono elencati gli attributi di stato supportati dall'oggetto WorkRequest nei rispettivi servizi.

Servizio Attributi di stato
Application Performance Monitoring
  • ACCEPTED
  • IN_PROGRESS
  • SUCCEEDED
  • FAILED
  • CANCELING
  • CANCELED
Autonomous Recovery Service
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • SUCCEEDED
  • FAILED
  • CANCELING
  • CANCELED
Servizio Big Data
  • CREATING
  • ACTIVE
  • UPDATING
  • SUSPENDING
  • SUSPENDED
  • RESUMING
  • DELETING
  • DELETED
  • FAILED
Piattaforma Blockchain
  • ACCEPTED
  • IN PROGRESS
  • SUCCEEDED
  • FAILED
  • CANCELING
  • CANCELED
Gruppi di posizionamento cluster
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Calcola
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Hub connettore
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Gestione dei contenuti
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Gestione database
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Database OCI con PostgreSQL
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Catalogo dati
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Integrazione dei dati
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Etichettatura dati
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • SUCCEEDED
  • CANCELING
  • CANCELED
  • FAILED
Data science
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Database
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
Migrazione del database
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Settore DevOps
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Storage di file
  • CREATING
  • ACTIVE
  • DELETING
  • DELETED
  • FAILED
  • UPDATED
Storage di file con Lustre
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • CANCELING
  • CANCELED
  • SUCCEEDED
  • NEEDS_ATTENTION
  • FAILED
Gestione delle applicazioni della flotta
  • ACCEPTED
  • IN_PROGRESS
  • CANCELING
  • CANCELED
  • SUCCEEDED
  • FAILED
Full Stack Disaster Recovery
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • CANCELING
  • CANCELED
  • SUCCEEDED
  • FAILED
  • NEEDS_ATTENTION
Globally Distributed Autonomous Database
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Globally Distributed Exadata Database on Exascale Infrastructure
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
GoldenGate
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELLED
IAM
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Integrazione
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Gestione Java
  • ACCEPTED
  • IN_PROGRESS
  • SUCCEEDED
  • CANCELING
  • CANCELED
  • FAILED
Motore Kubernetes
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Load balancer
  • CREATING
  • FAILED
  • ACTIVE
  • DELETING
  • DELETED
Log Analytics per LogAnalyticsQueryJobWorkRequest
  • ACCEPTED
  • IN_PROGRESS
  • SUCCEEDED
  • CANCELLED
  • FAILED
Log Analytics per LogAnalyticsStorageWorkRequest
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELED
Log Analytics per LogAnalyticsConfigWorkRequest
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
Management Agent
  • CREATED
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Firewall di rete
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Storage degli oggetti
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • COMPLETED
  • CANCELING
  • CANCELED
Oracle Cloud Bridge
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Oracle Cloud Migrations
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
  • NEEDS_ATTENTION
Hub di gestione del sistema operativo
  • ACCEPTED
  • IN_PROGRESS
  • SUCCEEDED
  • FAILED
  • CANCELING
  • CANCELED
Automazione dei processi
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Coda
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Resource Manager
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
Desktop sicuri
  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Mesh di servizio
  • ACCEPTED
  • IN_PROGRESS
  • FAILED
  • SUCCEEDED
  • WAITING
  • CANCELING
  • CANCELED
Gestione WebLogic
  • Accepted
  • In Progress
  • Succeeded
  • Failed

Filtro della risposta alla richiesta

A volte è necessario sapere quali risorse sono interessate da una determinata richiesta di lavoro asincrona. Nei casi in cui la risposta alla richiesta include solo una o due risorse interessate, il corpo della risposta alla richiesta è probabilmente sufficiente. Tuttavia, nei casi in cui una risposta a una richiesta influisce su molte risorse, è necessario filtrare la risposta per identificare le risorse a cui si è interessati.

L'applicazione di filtri alle risorse elencate in una risposta di richiesta di lavoro si basa su due attributi di tipo WorkRequestResource: entityType e actionType.

  • entityType: rappresenta il tipo di risorsa interessato dalla richiesta di lavoro. Questo è un attributo facoltativo, ma ogni risorsa può avere un solo entityType.
  • actionType: rappresenta l'impatto della risorsa specificata sull'operazione associata alla richiesta di lavoro. Ogni servizio specifica un elenco fisso di actionType valori consentiti (illustrati nelle sezioni seguenti).

Per ottenere informazioni sulle risorse su una richiesta di lavoro, chiamare il numero GetWorkRequest e passare l'ID della richiesta di lavoro. La chiamata restituisce una risposta in formato JSON. Di seguito è riportato un esempio di chiamata a GetWorkRequest nel servizio di storage degli oggetti.

{
    operationType: "COPY_OBJECT",
    status: "IN_PROGRESS",
    id: "f54527d6-029b-4221-9046-a811b7686202",
    resources: [
        {
            entityType: "object",
            actionType: "READ",
            entityUri: "/n/mynamespace/b/backups/o/myobject"
        },
        {
            entityType: "object",
            actionType: "WRITTEN",
            entityUri: "/n/mynamespace/b/backups/o/copyofmyobject"
        },
    ],
    timeAccepted: 2017-10-13T17:23:46.000Z,
    timeStarted: 2017-10-13T17:23:52.198Z,
    percentComplete: 10.0
}
Nota

Servizi diversi forniscono risposte leggermente diverse. Per i dettagli, consultare la documentazione di riferimento per l'API delle richieste di lavoro di ciascun servizio. I collegamenti a ciascuno sono disponibili nella sezione Per ulteriori informazioni.

Nella tabella seguente sono elencati i tipi di entità e i tipi di azione supportati dai servizi Oracle Cloud Infrastructure.

Nome servizio Operation entityType actionType
Application Performance Monitoring

CreateApmDomain

UpdateApmDomain

DeleteApmDomain

GenerateDataKeys

RemoveDataKeys

apm-domains

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

Autonomous Recovery Service

CreateProtectionPolicy

UpdateProtectionPolicy

DeleteProtectionPolicy

ChangeProtectionPolicyCompartment

CreateRecoveryServiceSubnet

UpdateRecoveryServiceSubnet

DeleteRecoveryServiceSubnet

ChangeRecoveryServiceSubnetCompartment

CreateProtectedDatabase

UpdateProtectedDatabase

DeleteProtectedDatabase

FetchProtectedDatabaseConfiguration

ChangeProtectedDatabaseCompartment

protectedDatabase

protectionPolicy

recoveryServiceSubnet

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

FAILED

Piattaforma Blockchain

CreateBlockchainPlatform

UpdateBlockchainPlatform

DeleteBlockchainPlatform

ScaleBlockchainPlatform

StopBlockchainPlatform

StartBlockchainPlatform

instance

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

Gruppi di posizionamento cluster

CreateClusterPlacementGroup

UpdateClusterPlacementGroup

DeleteClusterPlacementGroup

ChangeClusterPlacementGroupCompartment

clusterplacementgroup

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

FAILED

Gestione dei contenuti

CreateOceInstance

DeleteOceInstance

UpdateOceInstance

oceInstance

ACCEPTED

IN_PROGRESS

FAILED

SUCCEEDED

CANCELING

CANCELED

Gestione database

ChangeDbManagementPrivateEndpointCompartment

CreateDbManagementPrivateEndpoint

DeleteDbManagementPrivateEndpoint

GetDbManagementPrivateEndpoint

ListDbManagementPrivateEndpoints

UpdateDbManagementPrivateEndpoint

private-endpoints

CreateWorkspace

DeleteWorkspace

ChangeCompartment

StartWorkspace

StopWorkspace

Migrazione del database

CreateMigration

CloneMigration

EvaluateMigration

StartMigration

UpdateMigration

DeleteMigration

CreateConnection

UpdateConnection

DeleteConnection

DeleteAgent

odms-connection

odms-migration

odms-agent

ACTIVE

INACTIVE

ACCEPTED

IN_PROGRESS

WAITING

SUCCEEDED

FAILED

Database OCI con PostgreSQL

CreateBackup

UpdateBackup

DeleteBackup

ChangeBackupCompartment

CreateDbSystem

UpdateDbSystem

DeleteDbSystem

ChangeDbSystemCompartment

Catalogo dati

CreateCatalog

DeleteCatalog

ChangeCatalogCompartment

catalog

CREATED

UPDATED

DELETED

IN_PROGRESS

MOVED

Integrazione dei dati

CreateWorkspace

DeleteWorkspace

ChangeCompartment

StartWorkspace

StopWorkspace

disworkspace

CREATED

UPDATED

DELETED

MOVED

IN_PROGRESS

FAILED

Etichettatura dati

CreateDataset

DeleteDataset

ChangeDatasetCompartment

GenerateDatasetRecords

SnapshotDataset

AddDatasetLabels

RemoveDatasetLabels

RenameDatasetLabels

datalabelingdataset

ACCEPTED

IN_PROGRESS

WAITING

SUCCEEDED

CANCELING

CANCELED

FAILED

Data science

CreateNotebookSession

DeleteNotebookSession

DeleteProject

NotebookSession

Project

ACCEPTED

IN_PROGRESS

FAILED

SUCCEEDED

CANCELING

CANCELED

Settore DevOps

CreateProject

UpdateProject

ChangeProjectCompartment

DeleteProject

CreateDeployEnvironment

UpdateDeployEnvironment

DeleteDeployEnvironment

CreateDeployArtifact

UpdateDeployArtifact

DeleteDeployArtifact

CreateDeployPipeline

CreateDeployStage

UpdateDeployPipeline

UpdateDeployStage

DeleteDeployPipeline

DeleteDeployStage

CreateDeployment

UpdateDeployment

CancelDeployment

Project

DeployEnvironment

DeployArtifact

DeployPipeline

DeployStage

Deployment

ACCEPTED

IN_PROGRESS

FAILED

SUCCEEDED

CANCELING

CANCELED

Storage di file con Lustre

CreateLustreFileSystem

UpdateLustreFileSystem

ChangeLustreFileSystemCompartment

DeleteLustreFileSystem

lustrefilesystem

ACCEPTED

IN_PROGRESS

WAITING

SUCCEEDED

CANCELING

CANCELED

NEEDS_ATTENTION

FAILED

Full Stack Disaster Recovery

CreateDrProtectionGroup

UpdateDrProtectionGroup

DeleteDrProtectionGroup

ChangeDrProtectionGroupCompartment

AssociateDrProtectionGroup

DisassociateDrProtectionGroup

UpdateDrProtectionGroupRole

CreateDrPlan

UpdateDrPlan

DeleteDrPlan

CreateDrPlanExecution

UpdateDrPlanExecution

DeleteDrPlanExecution

RetryDrPlanExecution

IgnoreDrPlanExecution

CancelDrPlanExecution

PauseDrPlanExecution

ResumeDrPlanExecution

DrProtectionGroup

DrPlan

DrPlanExecution

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

FAILED

Globally Distributed Autonomous Database

ListShardedDatabases

GetShardedDatabase

GenerateWallet

UpdateShardedDatabase

ValidateNetwork

StartShardedDatabase

StopShardedDatabase

ChangeShardedDatabaseCompartment

CreateShardedDatabase

DeleteShardedDatabase

ChangePrivateEndpointCompartment

CreatePrivateEndpoint

DeletePrivateEndpoint

GetPrivateEndpoint

UpdatePrivateEndpoint

ListPrivateEndpoints

OsdShardedDatabase

OsdPrivateEndpoint

ACCEPTED

IN_PROGRESS

WAITING

FAILED

SUCCEEDED

CANCELING

CANCELED

Globally Distributed Exadata Database on Exascale Infrastructure

ChangeDistributedDatabaseCompartment

ConfigureDistributedDatabaseSharding

CreateDistributedDatabase

DeleteDistributedDatabase

PatchDistributedDatabase

StartDistributedDatabase

StopDistributedDatabase

UpdateDistributedDatabase

ChangeDistributedDatabasePrivateEndpointCompartment

CreateDistributedDatabasePrivateEndpoint

DeleteDistributedDatabasePrivateEndpoint

UpdateDistributedDatabasePrivateEndpoint

osddistributeddb

osddistributeddbprivateendpoint

ACCEPTED

IN_PROGRESS

WAITING

FAILED

SUCCEEDED

CANCELING

CANCELED

GoldenGate

CreateDeployment

DeleteDeployment

StartDeployment

StopDeployment

UpdateDeployment

UpgradeDeployment

ChangeDeploymentCompartment

CreateDatabaseRegistration

UpdateDatabaseRegistration

DeleteDatabaseRegistration

ChangeDatabaseRegistrationCompartment

CreateDeploymentBackup

DeleteDeploymentBackup

RestoreDeployment

Deployment

DatabaseRegistration

DeploymentBackup

CREATING

UPDATING

ACTIVE

INACTIVE

DELETING

DELETED

FAILED

Integrazione

CreateIntegrationInstance

DeleteIntegrationInstance

GetIntegrationInstance

StartIntegrationInstance

StopIntegrationInstance

UpdateIntegrationInstance

Nota: StopIntegrationInstance e StartIntegrationInstance sono supportati solo in Oracle Integration Generation 2.

instance

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

FAILED

Motore Kubernetes

CreateCluster

DeleteCluster

UpdateCluster

CreateNodePool

DeleteNodePool

UpdateNodePool

cluster

nodepool

ACCEPTED

IN_PROGRESS

FAILED

SUCCEEDED

CANCELING

CANCELED

Load balancer

CreateLoadBalancer

UpdateLoadBalancer

DeleteLoadBalancer

LoadBalancer

ACCEPTED

IN_PROGRESS

FAILED

SUCCEEDED

Management Agent DeployPlugins managementAgent

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

Firewall di rete

CreateNetworkFirewall

UpdateNetworkFirewall

DeleteNetworkFirewall

ChangeNetworkFirewallCompartment

CreateNetworkFirewallPolicy

UpdateNetworkFirewallPolicy

DeleteNetworkFirewallPolicy

ChangeNetworkFirewallPolicyCompartment

NetworkFirewall

NetworkFirewallPolicy

  • ACCEPTED
  • IN_PROGRESS
  • WAITING
  • FAILED
  • SUCCEEDED
  • CANCELING
  • CANCELED
Storage degli oggetti CopyObject object

READ

WRITTEN

Oracle Cloud Bridge

CreateEnvironment

UpdateEnvironment

DeleteEnvironment

ChangeEnvironmentCompartment

CreateAgent

UpdateAgent

DeleteAgent

ChangeAgentCompartment

CreateAgentDependency

UpdateAgentDependency

DeleteAgentDependency

ChangeAgentDependencyCompartment

CreateInventory

DeleteInventory

ImportInventory

DeleteAssetSource

RefreshAssetSource

CreateAssetSource

UpdateAssetSource

ocbworkrequest

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATEDFAILED

Oracle Cloud Migrations

CreateMigration

UpdateMigration

RefreshMigration

DeleteMigration

ChangeMigrationCompartment

StartAssetReplication

StartMigrationReplication

CreateReplicationSchedule

UpdateReplicationSchedule

DeleteReplicationSchedule

ChangeReplicationScheduleCompartment

CreateMigrationPlan

UpdateMigrationPlan

DeleteMigrationPlan

ChangeMigrationPlanCompartment

RefreshMigrationPlan

ExecuteMigrationPlan

RefreshMigrationAsset

CreateMigrationAsset

DeleteMigrationAsset

CreateTargetAsset

UpdateTargetAsset

DeleteTargetAsset

ocmworkrequest

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATEDFAILED

Hub di gestione del sistema operativo

AttachManagedInstancesToLifecycleStage

AttachManagedInstancesToManagedInstanceGroup

AttachSoftwareSourcesToManagedInstance

AttachSoftwareSourcesToManagedInstanceGroup

DeleteLifecycleEnvironment

DeleteManagedInstanceGroup

DetachManagedInstancesFromLifecycleStage

DetachManagedInstancesFromManagedInstanceGroup

DetachSoftwareSourcesFromManagedInstance

DisableModuleStreamOnManagedInstance

DisableModuleStreamOnManagedInstanceGroup

EnableModuleStreamOnManagedInstance

EnableModuleStreamOnManagedInstanceGroup

InstallModuleStreamProfileOnManagedInstance

InstallModuleStreamProfileOnManagedInstanceGroup

InstallPackagesOnManagedInstance

InstallPackagesOnManagedInstanceGroup

InstallWindowsUpdatesOnManagedInstance

InstallAllWindowsUpdatesOnManagedInstancesInCompartment

InstallWindowsUpdatesOnManagedInstanceGroup

ManageModuleStreamsOnManagedInstance

ManageModuleStreamsOnManagedInstanceGroup

PromoteSoftwareSourceToLifecycleStage

RefreshSoftwareOnManagedInstance

RemoveModuleStreamProfileFromManagedInstance

RemoveModuleStreamProfileFromManagedInstanceGroup

RemovePackagesFromManagedInstance

RemovePackagesFromManagedInstanceGroup

ScheduledJob/RunScheduledJobNow

SwitchModuleStreamOnManagedInstance

SynchronizeMirrors

SynchronizeSingleMirrors

UpdateAllPackagesOnManagedInstanceGroup

UpdateAllPackagesOnManagedInstancesInCompartment

UpdateManagedInstance

UpdateManagementStation

UpdatePackagesOnManagedInstance

UpdateSoftwareSource

managementagent

osmhlifecycleenvironment

osmhlifecyclestage

osmhmanagedinstancegroup

osmhmanagementstation

osmhsoftwaresource

ACCEPTED

IN_PROGRESS

SUCCEEDED

FAILED

CANCELING

CANCELED

Automazione dei processi

CreateOpaInstance

UpdateOpaInstance

DeleteOpaInstance

ChangeOpaInstanceCompartment

instance

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

FAILED

Coda

CreateQueue

UpdateQueue

PurgeQueue

DeleteQueue

ChangeQueueCompartment

Resource Manager

ChangeStackCompartment

CreatePrivateEndpoint

CreateStack

DeletePrivateEndpoint

DetectStackDrift

UpdatePrivateEndpoint

ormprivateendpoint

ormstack

CREATED

UPDATED

DELETED

IN_PROGRESS

Desktop sicuri

CreateDesktopPool

UpdateDesktopPool

DeleteDesktopPool

ChangeDesktopPoolCompartment

StartDesktopPool

StopDesktopPool

DeleteDesktop

UpdateDesktop

StartDesktop

StopDesktop

desktop

desktoppool

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

FAILED

Mesh di servizio

CreateMesh

UpdateMesh

DeleteMesh

MoveMesh

CreateAccessPolicy

UpdateAccessPolicy

DeleteAccessPolicy

MoveAccessPolicy

CreateVirtualService

UpdateVirtualService

DeleteVirtualService

MoveVirtualService

CreateVirtualServiceRouteTable

UpdateVirtualServiceRouteTable

DeleteVirtualServiceRouteTable

MoveVirtualServiceRouteTable

CreateVirtualDeployment

UpdateVirtualDeployment

DeleteVirtualDeployment

MoveVirtualDeployment

CreateIngressGateway

UpdateIngressGateway

DeleteIngressGateway

MoveIngressGateway

CreateIngressGatewayRouteTable

UpdateIngressGatewayRouteTable

DeleteIngressGatewayRouteTable

MoveIngressGatewayRouteTable

AccessPolicy

IngressGateway

IngressGatewayRouteTable

Mesh

VirtualDeployment

VirtualService

VirtualServiceRouteTable

CREATED

UPDATED

DELETED

IN_PROGRESS

RELATED

FAILED

Gestione WebLogic

StartWlsDomain

StopWlsDomain

RestartWlsDomain

ScanWlsDomain

ScanManagedInstance

InstallLatestPatchesOnWlsDomain

RestoreWlsDomain

wlsDomain

managedInstance

CREATED

IN_PROGRESS

UPDATED

DELETED

FAILED

RELATED

Campione richiesta/risposta

Di seguito è riportata una sequenza di chiamate API REST per creare un cluster, che è un'operazione comune con tempi di esecuzione lunghi. Il chiamante recupera l'ID della richiesta di lavoro dalla risposta alla chiamata POST iniziale e quindi esegue periodicamente il polling di WorkRequest per determinare lo stato dell'operazione. La sequenza di richiesta/risposta riportata di seguito mostra questo flusso di lavoro:

  1. L'utente invia una chiamata all'API CreateCluster.
  2. Il servizio risponde con il codice di stato 202, che indica che la richiesta è stata accettata e restituisce un ID della richiesta di lavoro nell'intestazione opc-work-request-id.
  3. Successivamente, l'utente invia una chiamata GET sull'ID della richiesta di lavoro per ottenere lo stato della richiesta di lavoro.
  4. Il servizio risponde con il codice di stato 200, indicando nel corpo della risposta che l'operazione CLUSTER_CREATE ha lo stato ACCEPTED.
  5. Con il polling continuo, vediamo un'altra chiamata GET per la richiesta di lavoro.
  6. Il servizio risponde con codice stato 200. Il corpo della risposta segnala che l'operazione SUCCEEDED.

Passo 1. Chiamata API iniziale per avviare un'operazione CLUSTER_CREATE.

POST https://containerengine.eu-frankfurt-1.oraclecloud.com/20180222/clusters
Accept: application/json
authorization: <Redacted>
content-length: 480
Content-Type: application/json
date: Mon, 02 Jul 2018 18:20:03 GMT
host: containerengine.eu-frankfurt-1.oraclecloud.com
opc-client-info: Oracle-JavaSDK/1.2.42-preview1-SNAPSHOT
opc-request-id: D7A390ED909C47038C438BA3629FB612
User-Agent: Oracle-JavaSDK/1.2.42-preview1-SNAPSHOT (Mac OS X/10.13.5; Java/1.8.0_172; Java HotSpot(TM) 64-Bit Server VM/25.172-b11)
x-content-sha256: S8U8OKQHyTLNViAzgexkjxvF4ctncJJHTjuRfXn0ya4={
   "name":"JavaSDK.CRUD",
   "compartmentId":"ocid1.compartment.oc1..<unique_ID>",
   "vcnId":"ocid1.vcn.oc1.eu-frankfurt-1.<unique_ID>",
   "kubernetesVersion":"v1.10.3",
   "options":{"serviceLbSubnetIds":["ocid1.subnet.oc1.eu-frankfurt-1.<unique_ID>",
   "ocid1.subnet.oc1.eu-frankfurt-1.<unique_ID>"]}}

Passo 2. La risposta alla chiamata API iniziale, che contiene l'ID della richiesta di lavoro in Opc-Work-Request-Id header.

202
Access-Control-Allow-Methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: opc-work-request-id
Content-Length: 0
Date: Mon, 02 Jul 2018 18:20:04 GMT
Opc-Request-Id: D7A390ED909C47038C438BA3629FB612/33EEDCAAB2E84508B34AA75CD0FD86F4/8261D1CC89814E9BB934440A1F43DA09
Opc-Work-Request-Id: ocid1.clustersworkrequest.oc1.eu-frankfurt-1.exampleuniqueID
Uri: /20180222/clusters
Vary: Accept-Encoding
X-Rate-Limit-Duration: 1
X-Rate-Limit-Limit: 16.70
X-Rate-Limit-Request-Forwarded-For: 10.237.10.0, 10.237.9.51
X-Rate-Limit-Request-Remote-Addr: 10.237.9.51:53077

Passo 3. Poiché si tratta di un'operazione con tempi di esecuzione lunghi, l'utente esegue periodicamente il polling della richiesta di lavoro utilizzando una chiamata GET per determinarne lo stato.

GET https://containerengine.eu-frankfurt-1.oraclecloud.com/20180222/workRequests/<clusters_work_request_OCID>
Accept: application/json
authorization: <Redacted>
date: Mon, 02 Jul 2018 18:20:04 GMT
host: containerengine.eu-frankfurt-1.oraclecloud.com
opc-client-info: Oracle-JavaSDK/1.2.42-preview1-SNAPSHOT
opc-request-id: E8F20DAC443346B3B0EA599F367EE294
User-Agent: Oracle-JavaSDK/1.2.42-preview1-SNAPSHOT (Mac OS X/10.13.5; Java/1.8.0_172; Java HotSpot(TM) 64-Bit Server VM/25.172-b11)

Passo 4. La chiamata GET restituisce la risposta seguente, che indica nel corpo della risposta che l'operazione CLUSTER_CREATE ha lo stato ACCEPTED.

200
Access-Control-Allow-Methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: opc-work-request-id
Content-Length: 717
Content-Type: application/json
Date: Mon, 02 Jul 2018 18:20:05 GMT
Etag: 56a41efaf33d81a54933495ee910c24d7bce7a83adf18810f95e07bdd2055805
Opc-Request-Id: E8F20DAC443346B3B0EA599F367EE294/8B19C9FC3B4442CEA14685D1973D0856/0BA60B0711764DE4A4373071632708C7
Retry-After: 30
Uri: /20180222/workRequests/_id_
Vary: Accept-Encoding
X-Rate-Limit-Duration: 1
X-Rate-Limit-Limit: 16.70
X-Rate-Limit-Request-Forwarded-For: 10.237.10.0, 10.237.9.51
X-Rate-Limit-Request-Remote-Addr: 10.237.9.51:43533
{
  "id": "ocid1.clustersworkrequest.oc1.eu-frankfurt-1.exampleuniqueID",
  "operationType": "CLUSTER_CREATE",
  "status": "ACCEPTED",
  "compartmentId": "ocid1.compartment.oc1..exampleuniqueID",
  "resources": [
    {
      "actionType": "IN_PROGRESS",
      "entityType": "cluster",
      "identifier": "ocid1.cluster.oc1.eu-frankfurt-1.exampleuniqueID",
      "entityUri": "/clusters/ocid1.cluster.oc1.eu-frankfurt-1.exampleuniqueID"
    }
  ],
  "timeAccepted": "2018-07-02T18:20:05Z",
  "timeStarted": null,
  "timeFinished": null
}

Passo 5. L'operazione continua e l'utente continua a eseguire il polling della richiesta di lavoro utilizzando il metodo GET.

GET https://containerengine.eu-frankfurt-1.oraclecloud.com/20180222/workRequests/<clusters_work_request_OCID>
Accept: application/json
authorization: <Redacted>
date: Mon, 02 Jul 2018 18:24:13 GMT
host: containerengine.eu-frankfurt-1.oraclecloud.com
opc-client-info: Oracle-JavaSDK/1.2.42-preview1-SNAPSHOT
opc-request-id: 64595B97E39A471A886DA29966BB6B1D
User-Agent: Oracle-JavaSDK/1.2.42-preview1-SNAPSHOT (Mac OS X/10.13.5; Java/1.8.0_172; Java HotSpot(TM) 64-Bit Server VM/25.172-b11)

Passo 6. L'ultima chiamata GET ha prodotto la risposta seguente, che indica che l'operazione è stata completata. Si noti che entityType è "cluster" e che actionType è "CREATED".

200
Access-Control-Allow-Methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: opc-work-request-id
Content-Length: 750
Content-Type: application/json
Date: Mon, 02 Jul 2018 18:24:14 GMT
Etag: 023d2a8ccb6d893fa8c875f64652353f21d22607825f49eeeb15b5394ae24918
Opc-Request-Id: 64595B97E39A471A886DA29966BB6B1D/3A81140991C94794AF365016E31DBE82/6245FBD8C25842B6BDF15187EA6ADB21
Uri: /20180222/workRequests/_id_
Vary: Accept-Encoding
X-Rate-Limit-Duration: 1
X-Rate-Limit-Limit: 16.70
X-Rate-Limit-Request-Forwarded-For: 10.237.3.0, 10.237.40.183
X-Rate-Limit-Request-Remote-Addr: 10.237.40.183:55856

{
  "id": "ocid1.clustersworkrequest.oc1.eu-frankfurt-1.exampleuniqueID",
  "operationType": "CLUSTER_CREATE",
  "status": "SUCCEEDED",
  "compartmentId": "ocid1.compartment.oc1..exampleuniqueID",
  "resources": [
    {
      "actionType": "CREATED",
      "entityType": "cluster",
      "identifier": "ocid1.cluster.oc1.eu-frankfurt-1.exampleuniqueID",
      "entityUri": "/clusters/ocid1.cluster.oc1.eu-frankfurt-1.exampleuniqueID"
    }
  ],
  "timeAccepted": "2018-07-02T18:20:05Z",
  "timeStarted": "2018-07-02T18:20:10Z",
  "timeFinished": "2018-07-02T18:24:01Z"
}

Per ulteriori informazioni