Package google.storagetransfer.v1

Indice

StorageTransferService

Storage Transfer Service e i relativi proto. Trasferisce i dati tra bucket Google Cloud Storage o da un'origine dati esterna a Google a un bucket Cloud Storage.

CreateAgentPool

rpc CreateAgentPool(CreateAgentPoolRequest) returns (AgentPool)

Crea una risorsa pool di agenti.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

CreateTransferJob

rpc CreateTransferJob(CreateTransferJobRequest) returns (TransferJob)

Crea un job di trasferimento che viene eseguito periodicamente.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

DeleteAgentPool

rpc DeleteAgentPool(DeleteAgentPoolRequest) returns (Empty)

Consente di eliminare un pool di agenti.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

DeleteTransferJob

rpc DeleteTransferJob(DeleteTransferJobRequest) returns (Empty)

Consente di eliminare un job di trasferimento. L'eliminazione di un job di trasferimento ne imposta lo stato su DELETED.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

GetAgentPool

rpc GetAgentPool(GetAgentPoolRequest) returns (AgentPool)

Recupera un pool di agenti.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

GetGoogleServiceAccount

rpc GetGoogleServiceAccount(GetGoogleServiceAccountRequest) returns (GoogleServiceAccount)

Restituisce l'account di servizio Google utilizzato da Storage Transfer Service per accedere ai bucket nel progetto in cui vengono eseguiti i trasferimenti o in altri progetti. Ogni account di servizio Google è associato a un progetto Google Cloud. Gli utenti devono aggiungere questo account di servizio alle ACL del bucket Google Cloud Storage per concedere l'accesso a Storage Transfer Service. Questo account di servizio è creato e di proprietà di Storage Transfer Service e può essere utilizzato solo da Storage Transfer Service.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

GetTransferJob

rpc GetTransferJob(GetTransferJobRequest) returns (TransferJob)

Recupera un job di trasferimento.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

ListAgentPools

rpc ListAgentPools(ListAgentPoolsRequest) returns (ListAgentPoolsResponse)

Elenca i pool di agenti.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

ListTransferJobs

rpc ListTransferJobs(ListTransferJobsRequest) returns (ListTransferJobsResponse)

Elenca i job di trasferimento.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

PauseTransferOperation

rpc PauseTransferOperation(PauseTransferOperationRequest) returns (Empty)

Mette in pausa un'operazione di trasferimento.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

ResumeTransferOperation

rpc ResumeTransferOperation(ResumeTransferOperationRequest) returns (Empty)

Riprende un'operazione di trasferimento in pausa.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

RunTransferJob

rpc RunTransferJob(RunTransferJobRequest) returns (Operation)

Avvia una nuova operazione per il job di trasferimento specificato. Un TransferJob ha un massimo di un TransferOperation attivo. Se questo metodo viene chiamato mentre è attivo un TransferOperation, viene restituito un errore.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

Aggiornamento AgentPool

rpc UpdateAgentPool(UpdateAgentPoolRequest) returns (AgentPool)

Aggiorna una risorsa pool di agenti esistente.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

AggiornaTransferJob

rpc UpdateTransferJob(UpdateTransferJobRequest) returns (TransferJob)

Aggiorna un job di trasferimento. L'aggiornamento delle specifiche di trasferimento di un job non influisce sulle operazioni di trasferimento già in esecuzione.

Nota:il campo status del job può essere modificato utilizzando questa chiamata RPC (ad esempio, per impostare lo stato di un job su DELETED, DISABLED o ENABLED).

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

AgentPool

Rappresenta un pool di agenti.

Campi
name

string

Obbligatorio. Specifica una stringa univoca che identifica il pool di agenti.

Formato: projects/{project_id}/agentPools/{agent_pool_id}

display_name

string

Specifica la descrizione del pool di agenti specificata dal client.

state

State

Solo output. Specifica lo stato del pool di agenti.

bandwidth_limit

BandwidthLimit

Specifica i dettagli del limite di larghezza di banda. Se questo campo non è specificato, il valore predefinito è impostato su "Nessun limite".

BandwidthLimit

Specifica un limite di larghezza di banda per un pool di agenti.

Campi
limit_mbps

int64

Velocità in megabyte al secondo, distribuita tra tutti gli agenti del pool.

Stato

Lo stato di un pool di agenti.

Enum
STATE_UNSPECIFIED Valore predefinito. Questo valore non è utilizzato.
CREATING Si tratta di uno stato di inizializzazione. Durante questa fase, le risorse vengono allocate per il pool di agenti.
CREATED Determina che il pool di agenti viene creato per l'utilizzo. In questo stato, gli agenti possono partecipare al pool di agenti e ai job di trasferimento in quel pool.
DELETING Determina che l'eliminazione di AgentPool è stata avviata e che è pianificata la pulizia e il rilascio di tutte le risorse.

AwsAccessKey

Chiave di accesso AWS (vedi Credenziali di sicurezza AWS).

Per informazioni sulle nostre norme di conservazione dei dati per le credenziali utente, consulta Credenziali utente.

Campi
access_key_id

string

Obbligatorio. ID chiave di accesso AWS.

secret_access_key

string

Obbligatorio. Chiave di accesso segreta AWS. Questo campo non viene restituito nelle risposte RPC.

AwsS3CompatibleData

Una risorsa AwsS3CompatibleData.

Campi
bucket_name

string

Obbligatorio. Specifica il nome del bucket.

path

string

Specifica il percorso principale per il trasferimento degli oggetti.

Deve essere una stringa vuota o un nome di percorso completo che termina con "/". Questo campo viene trattato come un prefisso dell'oggetto. Di conseguenza, in genere non deve iniziare con una "/".

endpoint

string

Obbligatorio. Specifica l'endpoint del servizio di archiviazione.

region

string

Specifica la regione con cui firmare le richieste. Questo campo può essere lasciato vuoto se le richieste devono essere firmate con una regione vuota.

Campo unione data_provider. Specifica i metadati del fornitore di dati compatibile con S3. Ogni provider potrebbe contenere alcuni attributi che non si applicano a tutti i provider di dati compatibili con S3. Se non specificato, per impostazione predefinita viene utilizzato S3CompatibleMetadata. data_provider può essere solo uno dei seguenti:
s3_metadata

S3CompatibleMetadata

Metadati compatibili con S3.

AwsS3Data

Una risorsa AwsS3Data può essere un'origine dati, ma non un'area di destinazione dei dati. In una risorsa AwsS3Data, il nome di un oggetto è il nome della chiave dell'oggetto S3.

Campi
bucket_name

string

Obbligatorio. Nome del bucket S3 (vedi Creare un bucket).

aws_access_key

AwsAccessKey

Solo input. Chiave di accesso AWS utilizzata per firmare le richieste API al bucket AWS S3. Le autorizzazioni per il bucket devono essere concesse all'ID di accesso della chiave di accesso AWS.

Per informazioni sulle nostre norme di conservazione dei dati per le credenziali utente, consulta Credenziali utente.

path

string

Percorso principale per il trasferimento degli oggetti.

Deve essere una stringa vuota o un nome di percorso completo che termina con "/". Questo campo viene trattato come un prefisso dell'oggetto. Di conseguenza, in genere non deve iniziare con una "/".

role_arn

string

Il nome della risorsa Amazon (ARN) del ruolo per supportare le credenziali temporanee tramite AssumeRoleWithWebIdentity. Per ulteriori informazioni sugli ARN, consulta ARN IAM.

Quando viene fornito un ARN ruolo, Transfer Service recupera le credenziali temporanee per la sessione utilizzando una chiamata AssumeRoleWithWebIdentity per il ruolo fornito utilizzando il GoogleServiceAccount per questo progetto.

cloudfront_domain

string

Facoltativo. Il nome di dominio della distribuzione CloudFront che rimanda a questo bucket, da utilizzare durante il recupero.

Per ulteriori informazioni, consulta Trasferire da S3 tramite CloudFront.

Formato: https://{id}.cloudfront.net o qualsiasi dominio personalizzato valido. Deve iniziare con https://.

credentials_secret

string

Facoltativo. Il nome della risorsa di un secret in Secret Manager.

Le credenziali AWS devono essere archiviate in Secret Manager in formato JSON:

{ "access_key_id": "ACCESS_KEY_ID", "secret_access_key": "SECRET_ACCESS_KEY" }

A GoogleServiceAccount deve essere concesso roles/secretmanager.secretAccessor per la risorsa.

Per ulteriori informazioni, consulta Configurare l'accesso a un'origine: Amazon S3.

Se è specificato credentials_secret, non specificare role_arn o aws_access_key.

Formato: projects/{project_number}/secrets/{secret_name}

Campo unione private_network.

private_network può essere solo uno dei seguenti:

managed_private_network

bool

Byte in uscita su una rete privata gestita da Google. Questa rete è condivisa tra altri utenti di Storage Transfer Service.

AzureBlobStorageData

Una risorsa AzureBlobStorageData può essere un'origine dati, ma non un'area di destinazione dei dati. Una risorsa AzureBlobStorageData rappresenta un contenitore Azure. L'account di archiviazione determina l'endpoint Azure. In una risorsa AzureBlobStorageData, il nome di un blob è il nome della chiave del blob di Azure Blob Storage.

Campi
storage_account

string

Obbligatorio. Il nome dell'account Azure Storage.

azure_credentials

AzureCredentials

Obbligatorio. Solo input. Credenziali utilizzate per autenticare le richieste API ad Azure.

Per informazioni sulle nostre norme di conservazione dei dati per le credenziali utente, consulta Credenziali utente.

container

string

Obbligatorio. Il contenitore da trasferire dall'account di archiviazione Azure.

path

string

Percorso principale per il trasferimento degli oggetti.

Deve essere una stringa vuota o un nome di percorso completo che termina con "/". Questo campo viene trattato come un prefisso dell'oggetto. Di conseguenza, in genere non deve iniziare con una "/".

credentials_secret

string

Facoltativo. Il nome della risorsa di un secret in Secret Manager.

Il token SAS di Azure deve essere archiviato in Secret Manager in formato JSON:

{ "sas_token" : "SAS_TOKEN" }

A GoogleServiceAccount deve essere concesso roles/secretmanager.secretAccessor per la risorsa.

Per ulteriori informazioni, consulta Configurare l'accesso a un'origine: Microsoft Azure Blob Storage.

Se è specificato credentials_secret, non specificare azure_credentials.

Formato: projects/{project_number}/secrets/{secret_name}

AzureCredentials

Credenziali Azure

Per informazioni sulle nostre norme di conservazione dei dati per le credenziali utente, consulta Credenziali utente.

Campi
sas_token

string

Obbligatorio. Firma di accesso condiviso (SAS) di Azure.

Per ulteriori informazioni sulle firme di accesso condiviso, vedi Concedere l'accesso limitato alle risorse di Azure Storage utilizzando le firme di accesso condiviso (SAS).

CreateAgentPoolRequest

Specifica la richiesta passata a CreateAgentPool.

Campi
project_id

string

Obbligatorio. L'ID del progetto Google Cloud proprietario del pool di agenti.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata projectId:

  • storagetransfer.agentpools.create
agent_pool

AgentPool

Obbligatorio. Il pool di agenti da creare.

agent_pool_id

string

Obbligatorio. L'ID del pool di agenti da creare.

agent_pool_id deve soddisfare i seguenti requisiti:

  • Lunghezza massima di 128 caratteri.
  • Non deve iniziare con la stringa goog.
  • Deve iniziare con un carattere ASCII minuscolo, seguito da:
    • Zero o più: caratteri dell'alfabeto latino minuscolo, numeri, trattini (-), punti (.), trattini bassi (_) o tildi (~).
    • Uno o più numeri o caratteri ASCII minuscoli.

Come espresso dall'espressione regolare: ^(?!goog)[a-z]([a-z0-9-._~]*[a-z0-9])?$.

CreateTransferJobRequest

Richiesta passata a CreateTransferJob.

Campi
transfer_job

TransferJob

Obbligatorio. Il job da creare.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata transferJob:

  • storagetransfer.jobs.create

DeleteAgentPoolRequest

Specifica la richiesta passata a DeleteAgentPool.

Campi
name

string

Obbligatorio. Il nome del pool di agenti da eliminare.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata name:

  • storagetransfer.agentpools.delete

DeleteTransferJobRequest

Richiesta passata a DeleteTransferJob.

Campi
job_name

string

Obbligatorio. Il job da eliminare.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata jobName:

  • storagetransfer.jobs.delete
project_id

string

Obbligatorio. L'ID del progetto Google Cloud proprietario del job.

ErrorLogEntry

Una voce che descrive un errore che si è verificato.

Campi
url

string

Obbligatorio. Un URL che fa riferimento al target (un'origine dati, un'area di destinazione dei dati o un oggetto) a cui è associato l'errore.

error_details[]

string

Un elenco di messaggi che contengono i dettagli dell'errore.

ErrorSummary

Un riepilogo degli errori per codice di errore, oltre a un conteggio e voci di log degli errori di esempio.

Campi
error_code

Code

Obbligatorio.

error_count

int64

Obbligatorio. Conteggio di questo tipo di errore.

error_log_entries[]

ErrorLogEntry

Esempi di errori.

Per un determinato codice di errore di una singola operazione di trasferimento vengono registrate al massimo 5 voci di log di errore.

EventStream

Specifica le opzioni di trasferimento basato su eventi. I trasferimenti basati su eventi ascoltano uno stream di eventi per trasferire i file aggiornati.

Campi
name

string

Obbligatorio. Specifica un nome univoco della risorsa, ad esempio l'ARN AWS SQS nel formato "arn:aws:sqs:region:account_id:queue_name" o il nome della risorsa dell'abbonamento Pub/Sub nel formato "projects/{project}/subscriptions/{sub}".

event_stream_start_time

Timestamp

Specifica la data e l'ora in cui Storage Transfer Service inizia a monitorare gli eventi di questo stream. Se non viene specificata alcuna ora di inizio o se l'ora di inizio è nel passato, Storage Transfer Service inizia immediatamente l'ascolto.

event_stream_expiration_time

Timestamp

Specifica la data e l'ora in cui Storage Transfer Service smette di ascoltare gli eventi di questo stream. Dopo questo orario, tutti i trasferimenti in corso verranno completati, ma non verranno avviati nuovi trasferimenti.

GcsData

In una risorsa GcsData, il nome di un oggetto corrisponde al nome dell'oggetto Cloud Storage e la relativa "data dell'ultima modifica" fa riferimento alla proprietà updated degli oggetti Cloud Storage, che cambia quando vengono aggiornati i contenuti o i metadati dell'oggetto.

Campi
bucket_name

string

Obbligatorio. Nome del bucket Cloud Storage. Deve soddisfare i requisiti per i nomi dei bucket.

path

string

Percorso principale per il trasferimento degli oggetti.

Deve essere una stringa vuota o un nome di percorso completo che termina con "/". Questo campo viene trattato come un prefisso dell'oggetto. Di conseguenza, in genere non deve iniziare con una "/".

Il valore del percorso principale deve soddisfare i Requisiti per i nomi degli oggetti.

managed_folder_transfer_enabled

bool

Anteprima. Consente il trasferimento di cartelle gestite tra i bucket Cloud Storage. Imposta questa opzione su gcs_data_source.

Se impostato su true:

  • Le cartelle gestite nel bucket di origine vengono trasferite al bucket di destinazione.
  • Le cartelle gestite nel bucket di destinazione vengono sovrascritte. Le altre opzioni OVERWRITE non sono supportate.

Consulta Trasferire cartelle gestite di Cloud Storage.

GetAgentPoolRequest

Specifica la richiesta passata a GetAgentPool.

Campi
name

string

Obbligatorio. Il nome del pool di agenti da ottenere.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata name:

  • storagetransfer.agentpools.get

GetGoogleServiceAccountRequest

Richiesta passata a GetGoogleServiceAccount.

Campi
project_id

string

Obbligatorio. L'ID del progetto Google Cloud a cui è associato l'account di servizio Google.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata projectId:

  • storagetransfer.projects.getServiceAccount

GetTransferJobRequest

Richiesta passata a GetTransferJob.

Campi
job_name

string

Obbligatorio. Il job da ottenere.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata jobName:

  • storagetransfer.jobs.get
project_id

string

Obbligatorio. L'ID del progetto Google Cloud proprietario del job.

GoogleServiceAccount

Service account Google

Campi
account_email

string

Indirizzo email dell'account di servizio.

subject_id

string

Identificatore univoco dell'account di servizio.

HdfsData

Una risorsa HdfsData specifica un percorso all'interno di un'entità HDFS (ad es. un cluster). Tutte le impostazioni specifiche del cluster, come i namenode e le porte, sono configurate sugli agenti di trasferimento che gestiscono le richieste, pertanto HdfsData contiene solo il percorso principale dei dati nel nostro trasferimento.

Campi
path

string

Percorso principale per il trasferimento dei file.

HttpData

Una risorsa HttpData specifica un elenco di oggetti sul web da trasferire tramite HTTP. Le informazioni sugli oggetti da trasferire sono contenute in un file a cui fa riferimento un URL. La prima riga del file deve essere "TsvHttpData-1.0", che specifica il formato del file. Le righe successive specificano le informazioni dell'elenco di oggetti, un oggetto per voce dell'elenco. Ogni voce contiene i seguenti campi delimitati da tabulazione:

  • URL HTTP: la posizione dell'oggetto.

  • Lunghezza: le dimensioni dell'oggetto in byte.

  • MD5: l'hash MD5 dell'oggetto codificato in base64.

Per un esempio di file TSV valido, consulta Trasferire i dati da URL.

Quando trasferisci i dati in base a un elenco di URL, tieni presente quanto segue:

  • Quando un oggetto situato in http(s)://hostname:port/<URL-path> viene trasferito a un'area di destinazione dei dati, il nome dell'oggetto nell'area di destinazione dei dati è <hostname>/<URL-path>.

  • Se le dimensioni specificate di un oggetto non corrispondono alle dimensioni effettive dell'oggetto recuperato, l'oggetto non viene trasferito.

  • Se l'MD5 specificato non corrisponde all'MD5 calcolato dai byte trasferiti, il trasferimento dell'oggetto non va a buon fine.

  • Assicurati che ogni URL specificato sia accessibile pubblicamente. Ad esempio, in Cloud Storage puoi condividere un oggetto pubblicamente e ottenere un link.

  • Storage Transfer Service rispetta le regole robots.txt e richiede che il server HTTP di origine supporti le richieste Range e restituisca un'intestazione Content-Length in ogni risposta.

  • ObjectConditions non hanno alcun effetto sul filtro degli oggetti da trasferire.

Campi
list_url

string

Obbligatorio. L'URL che rimanda al file in cui sono archiviate le voci dell'elenco di oggetti. Questo file deve consentire l'accesso pubblico. Al momento sono supportati solo gli URL con schemi HTTP e HTTPS.

ListAgentPoolsRequest

La richiesta è stata passata a ListAgentPools.

Campi
project_id

string

Obbligatorio. L'ID del progetto Google Cloud proprietario del job.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata projectId:

  • storagetransfer.agentpools.list
filter

string

Un elenco facoltativo di parametri di query specificati come testo JSON sotto forma di:

{"agentPoolNames":["agentpool1","agentpool2",...]}

Poiché agentPoolNames supporta più valori, questi devono essere specificati con la notazione array. Se il filtro è vuoto o non viene fornito, l'elenco restituisce tutti i pool di agenti per il progetto.

page_size

int32

Le dimensioni della pagina dell'elenco. Il valore massimo consentito è 256.

page_token

string

Il token della pagina dell'elenco.

ListAgentPoolsResponse

Risposta da ListAgentPools.

Campi
agent_pools[]

AgentPool

Un elenco di pool di agenti.

next_page_token

string

Il token della pagina successiva dell'elenco.

ListTransferJobsRequest

projectId, jobNames e jobStatuses sono parametri di query che possono essere specificati durante l'elenco dei job di trasferimento.

Campi
filter

string

Obbligatorio. Un elenco di parametri di query specificati come testo JSON sotto forma di:

{
  "projectId":"my_project_id",
  "jobNames":["jobid1","jobid2",...],
  "jobStatuses":["status1","status2",...],
  "dataBackend":"QUERY_REPLICATION_CONFIGS",
  "sourceBucket":"source-bucket-name",
  "sinkBucket":"sink-bucket-name",
}

La formattazione JSON nell'esempio è solo per la visualizzazione; fornisci i parametri di query senza spazi o interruzioni di riga.

  • projectId è obbligatorio.
  • Poiché jobNames e jobStatuses supportano più valori, i relativi valori devono essere specificati con la notazione array. jobNames e jobStatuses sono facoltativi. I valori validi non fanno distinzione tra maiuscole e minuscole:
  • Specifica "dataBackend":"QUERY_REPLICATION_CONFIGS" per restituire un elenco di job di replica tra bucket.
  • Limita i risultati ai job di un determinato bucket con sourceBucket e/o a un determinato bucket con sinkBucket.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata filter:

  • storagetransfer.jobs.list
page_size

int32

Le dimensioni della pagina dell'elenco. Il valore massimo consentito è 256.

page_token

string

Il token della pagina dell'elenco.

ListTransferJobsResponse

Risposta di ListTransferJobs.

Campi
transfer_jobs[]

TransferJob

Un elenco di job di trasferimento.

next_page_token

string

Il token della pagina successiva dell'elenco.

LoggingConfig

Specifica il comportamento di registrazione per le operazioni di trasferimento.

I log possono essere inviati a Cloud Logging per tutti i tipi di trasferimento. Per maggiori dettagli, consulta Leggere i log di trasferimento.

Campi
log_actions[]

LoggableAction

Specifica le azioni da registrare. Se è vuoto, non vengono generati log.

log_action_states[]

LoggableActionState

Stati in cui vengono registrati log_actions. Se è vuoto, non vengono generati log.

enable_onprem_gcs_transfer_logs

bool

Per i trasferimenti PosixFilesystem, attiva i log di trasferimento del file system anziché, o in aggiunta a, Cloud Logging.

Questa opzione ignora [LoggableAction] e [LoggableActionState]. Se sono impostate, Cloud Logging verrà attivato anche per questo trasferimento.

LoggableAction

Azioni registrabili.

Enum
LOGGABLE_ACTION_UNSPECIFIED Valore predefinito. Questo valore non è utilizzato.
FIND Elenco di oggetti in un bucket.
DELETE Eliminazione di oggetti nell'origine o nella destinazione.
COPY Copiare oggetti in Google Cloud Storage.

LoggableActionState

Stati delle azioni registrabili.

Enum
LOGGABLE_ACTION_STATE_UNSPECIFIED Valore predefinito. Questo valore non è utilizzato.
SUCCEEDED LoggableAction completata correttamente. Le azioni SUCCEEDED vengono registrate come INFO.
FAILED LoggableAction è stato terminato in uno stato di errore. Le azioni FAILED vengono registrate come ERROR.

MetadataOptions

Specifica le opzioni dei metadati per l'esecuzione di un trasferimento.

Campi
mode

Mode

Specifica la modalità di gestione dell'attributo mode di ciascun file da parte del trasferimento. Per impostazione predefinita, la modalità non viene conservata. Si applica solo ai trasferimenti che coinvolgono file system POSIX e viene ignorato per gli altri trasferimenti.

gid

GID

Specifica in che modo l'attributo GID (ID gruppo) POSIX di ogni file deve essere gestito dal trasferimento. Per impostazione predefinita, il GID non viene conservato. Si applica solo ai trasferimenti che coinvolgono file system POSIX e viene ignorato per gli altri trasferimenti.

uid

UID

Specifica in che modo l'attributo ID utente (UID) POSIX di ogni file deve essere gestito dal trasferimento. Per impostazione predefinita, l'UID non viene conservato. Si applica solo ai trasferimenti che coinvolgono file system POSIX e viene ignorato per gli altri trasferimenti.

acl

Acl

Specifica in che modo devono essere preservati gli ACL di ogni oggetto per i trasferimenti tra i bucket Google Cloud Storage. Se non specificato, il comportamento predefinito è lo stesso di ACL_DESTINATION_BUCKET_DEFAULT.

storage_class

StorageClass

Specifica la classe di archiviazione da impostare sugli oggetti trasferiti ai bucket Google Cloud Storage. Se non specificato, il comportamento predefinito è lo stesso di STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT.

temporary_hold

TemporaryHold

Specifica in che modo lo stato di blocco temporaneo di ciascun oggetto deve essere mantenuto per i trasferimenti tra bucket Google Cloud Storage. Se non specificato, il comportamento predefinito è lo stesso di TEMPORARY_HOLD_PRESERVE.

kms_key

KmsKey

Specifica in che modo la chiave di crittografia gestita dal cliente (CMEK) di Cloud KMS di ogni oggetto viene conservata per i trasferimenti tra i bucket Google Cloud Storage. Se non specificato, il comportamento predefinito è lo stesso di KMS_KEY_DESTINATION_BUCKET_DEFAULT.

time_created

TimeCreated

Specifica in che modo i metadati timeCreated di ogni oggetto vengono conservati per i trasferimenti. Se non specificato, il comportamento predefinito è lo stesso di TIME_CREATED_SKIP. Questo comportamento è supportato per i trasferimenti ai bucket Cloud Storage da Cloud Storage, Amazon S3, archiviazione compatibile con S3 e origini Azure.

Acl

Opzioni per la gestione degli ACL degli oggetti Cloud Storage.

Enum
ACL_UNSPECIFIED Il comportamento delle ACL non è specificato.
ACL_DESTINATION_BUCKET_DEFAULT Utilizza gli ACL degli oggetti predefiniti del bucket di destinazione, se applicabili.
ACL_PRESERVE Conserva gli ACL originali dell'oggetto. È necessario che l'account di servizio disponga dell'autorizzazione storage.objects.getIamPolicy per l'oggetto di origine. L'accesso uniforme a livello di bucket non deve essere abilitato nei bucket di origine o di destinazione.

GID

Opzioni per la gestione dell'attributo GID del file.

Enum
GID_UNSPECIFIED Il comportamento del gruppo di utenti non è specificato.
GID_SKIP Non conservare il GID durante un job di trasferimento.
GID_NUMBER Mantieni il GID durante un job di trasferimento.

KmsKey

Opzioni per la gestione dell'impostazione KmsKey per gli oggetti Google Cloud Storage.

Enum
KMS_KEY_UNSPECIFIED Il comportamento di KmsKey non è specificato.
KMS_KEY_DESTINATION_BUCKET_DEFAULT Utilizza le impostazioni di crittografia predefinite del bucket di destinazione.
KMS_KEY_PRESERVE Mantieni la chiave di crittografia gestita dal cliente (CMEK) Cloud KMS originale dell'oggetto, se presente. Gli oggetti che non utilizzano una chiave di crittografia Cloud KMS verranno criptati utilizzando le impostazioni di crittografia del bucket di destinazione.

Modalità

Opzioni per la gestione dell'attributo della modalità file.

Enum
MODE_UNSPECIFIED Il comportamento della modalità non è specificato.
MODE_SKIP Non utilizzare la modalità di conservazione durante un job di trasferimento.
MODE_PRESERVE Modalità di conservazione durante un job di trasferimento.

StorageClass

Opzioni per la gestione della classe di archiviazione di oggetti Google Cloud Storage.

Enum
STORAGE_CLASS_UNSPECIFIED Il comportamento della classe di archiviazione non è specificato.
STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT Utilizza la classe di archiviazione predefinita del bucket di destinazione.
STORAGE_CLASS_PRESERVE Mantieni la classe di archiviazione originale dell'oggetto. Questa operazione è supportata solo per i trasferimenti dai bucket Google Cloud Storage. Le classi di archiviazione REGIONAL e MULTI_REGIONAL verranno mappate a STANDARD per garantire che possano essere scritte nel bucket di destinazione.
STORAGE_CLASS_STANDARD Imposta la classe di archiviazione su STANDARD.
STORAGE_CLASS_NEARLINE Imposta la classe di archiviazione su NEARLINE.
STORAGE_CLASS_COLDLINE Imposta la classe di archiviazione su COLDLINE.
STORAGE_CLASS_ARCHIVE Imposta la classe di archiviazione su ARCHIVE.

TemporaryHold

Opzioni per la gestione delle sospensioni temporanee per gli oggetti Google Cloud Storage.

Enum
TEMPORARY_HOLD_UNSPECIFIED Il comportamento della preautorizzazione temporanea non è specificato.
TEMPORARY_HOLD_SKIP Non impostare un blocco temporaneo sull'oggetto di destinazione.
TEMPORARY_HOLD_PRESERVE Mantieni lo stato di blocco temporaneo originale dell'oggetto.

TimeCreated

Opzioni per la gestione dei metadati timeCreated per gli oggetti Google Cloud Storage.

Enum
TIME_CREATED_UNSPECIFIED Il comportamento di TimeCreated non è specificato.
TIME_CREATED_SKIP Non conservare i metadati timeCreated dell'oggetto di origine.
TIME_CREATED_PRESERVE_AS_CUSTOM_TIME Conserva i metadati timeCreated o lastModified dell'oggetto di origine nel campo customTime dell'oggetto di destinazione. Tieni presente che qualsiasi valore memorizzato nel campo customTime dell'oggetto di origine non verrà propagato all'oggetto di destinazione.

UID

Opzioni per la gestione dell'attributo UID del file.

Enum
UID_UNSPECIFIED Il comportamento dell'UID non è specificato.
UID_SKIP Non conservare l'UID durante un job di trasferimento.
UID_NUMBER Mantieni l'UID durante un job di trasferimento.

NotificationConfig

Specifica per configurare le notifiche pubblicate in Pub/Sub. Le notifiche vengono pubblicate nell'argomento fornito dal cliente utilizzando il seguente PubsubMessage.attributes:

PubsubMessage.data contiene una risorsa TransferOperation formattata in base al PayloadFormat specificato.

Campi
pubsub_topic

string

Obbligatorio. Il Topic.name dell'argomento Pub/Sub a cui pubblicare le notifiche. Deve essere nel formato: projects/{project}/topics/{topic}. La mancata corrispondenza a questo formato genera un errore INVALID_ARGUMENT.

event_types[]

EventType

Tipi di eventi per i quali è richiesta una notifica. Se vuoto, vengono inviate notifiche per tutti i tipi di eventi.

payload_format

PayloadFormat

Obbligatorio. Il formato desiderato per i payload dei messaggi di notifica.

EventType

Enum per specificare i tipi di eventi per i quali devono essere pubblicate le notifiche.

In futuro potrebbero essere aggiunti altri tipi di eventi. I client devono ignorare in sicurezza i tipi di eventi non riconosciuti o specificare esplicitamente i tipi di eventi che sono disposti ad accettare.

Enum
EVENT_TYPE_UNSPECIFIED Valore non consentito, per evitare di consentire un valore predefinito.
TRANSFER_OPERATION_SUCCESS TransferOperation completato con stato SUCCESS.
TRANSFER_OPERATION_FAILED TransferOperation completato con stato FAILED.
TRANSFER_OPERATION_ABORTED TransferOperation completato con stato ABORTED.

PayloadFormat

Enum per specificare il formato del payload di un messaggio di notifica.

Enum
PAYLOAD_FORMAT_UNSPECIFIED Valore non consentito, per evitare di consentire un valore predefinito.
NONE La notifica non include alcun payload.
JSON TransferOperation è formattato come risposta JSON, in application/json.

ObjectConditions

Condizioni che determinano quali oggetti vengono trasferiti. Si applica solo alle origini dati cloud come S3, Azure e Cloud Storage.

Per "data e ora dell'ultima modifica" si intende la data e l'ora dell'ultima modifica dei contenuti o dei metadati dell'oggetto. Nello specifico, si tratta della proprietà updated degli oggetti Cloud Storage, del campo LastModified degli oggetti S3 e dell'intestazione Last-Modified dei blob di Azure.

I trasferimenti con un'origine o una destinazione PosixFilesystem non supportano ObjectConditions.

Campi
min_time_elapsed_since_last_modification

Duration

Garantisce che gli oggetti non vengano trasferiti finché non è trascorso un periodo di tempo minimo specificato dopo l'ora dell'ultima modifica. Quando inizia un TransferOperation, gli oggetti con un "momento dell'ultima modifica" vengono trasferiti solo se il tempo trascorso tra il start_time del TransferOperation e il "momento dell'ultima modifica" dell'oggetto è uguale o superiore al valore di "min_time_elapsed_since_last_modification". Vengono trasferiti anche gli oggetti che non hanno un "momento dell'ultima modifica".

max_time_elapsed_since_last_modification

Duration

Garantisce che gli oggetti non vengano trasferiti se è trascorso un tempo massimo specifico dall'ora dell'ultima modifica. Quando inizia un TransferOperation, gli oggetti con un "momento dell'ultima modifica" vengono trasferiti solo se il tempo trascorso tra il start_time del TransferOperatione il "momento dell'ultima modifica" dell'oggetto è inferiore al valore di max_time_elapsed_since_last_modification. Vengono trasferiti anche gli oggetti che non hanno un "momento dell'ultima modifica".

include_prefixes[]

string

Se specifichi include_prefixes, Storage Transfer Service utilizza gli elementi dell'array include_prefixes per determinare quali oggetti includere in un trasferimento. Gli oggetti devono iniziare con uno dei valori include_prefixes corrispondenti per essere inclusi nel trasferimento. Se è specificato exclude_prefixes, gli oggetti non devono iniziare con nessuno dei exclude_prefixes specificati per l'inclusione nel trasferimento.

Di seguito sono riportati i requisiti di include_prefixes:

  • Ogni prefisso include può contenere qualsiasi sequenza di caratteri Unicode, con una lunghezza massima di 1024 byte quando è codificato in UTF-8 e non deve contenere caratteri di ritorno a capo o di a capo. La ricerca di corrispondenze tramite caratteri jolly e espressioni regolari non è supportata.

  • Ogni prefisso include deve omettere la barra iniziale. Ad esempio, per includere l'oggetto s3://my-aws-bucket/logs/y=2015/requests.gz, specifica il prefisso include come logs/y=2015/requests.gz.

  • Nessuno dei valori del prefisso include può essere vuoto, se specificato.

  • Ogni prefisso include deve includere una parte distinta dello spazio dei nomi dell'oggetto. Nessun prefisso include-prefix può essere un prefisso di un altro prefisso include-prefix.

La dimensione massima di include_prefixes è 1000.

Per ulteriori informazioni, vedi Filtrare gli oggetti dai trasferimenti.

exclude_prefixes[]

string

Se specifichi exclude_prefixes, Storage Transfer Service utilizza gli elementi dell'array exclude_prefixes per determinare quali oggetti escludere da un trasferimento. Gli oggetti non devono iniziare con uno dei exclude_prefixes corrispondenti per essere inclusi in un trasferimento.

Di seguito sono riportati i requisiti di exclude_prefixes:

  • Ogni prefisso di esclusione può contenere qualsiasi sequenza di caratteri Unicode, con una lunghezza massima di 1024 byte quando è codificato in UTF-8 e non deve contenere caratteri di a capo o di ritorno a capo. La ricerca di corrispondenze tramite caratteri jolly e espressioni regolari non è supportata.

  • Ogni prefisso di esclusione deve omettere la barra iniziale. Ad esempio, per escludere l'oggetto s3://my-aws-bucket/logs/y=2015/requests.gz, specifica il prefisso di esclusione come logs/y=2015/requests.gz.

  • Nessuno dei valori del prefisso di esclusione può essere vuoto, se specificato.

  • Ogni prefisso di esclusione deve escludere una parte distinta dello spazio dei nomi dell'oggetto. Nessun prefisso di esclusione può essere un prefisso di un altro prefisso di esclusione.

  • Se è specificato include_prefixes, ogni prefisso di esclusione deve iniziare con il valore di un percorso incluso esplicitamente da include_prefixes.

La dimensione massima di exclude_prefixes è 1000.

Per ulteriori informazioni, vedi Filtrare gli oggetti dai trasferimenti.

last_modified_since

Timestamp

Se specificato, vengono trasferiti solo gli oggetti con una "data e ora ultima modifica" uguale o successiva a questo timestamp e gli oggetti che non hanno una "data e ora ultima modifica".

I campi last_modified_since e last_modified_before possono essere utilizzati insieme per l'elaborazione dei dati suddivisi in blocchi. Ad esempio, prendiamo in considerazione uno script che elabora i dati di un giorno alla volta. A questo scopo, devi impostare ciascun campo come segue:

  • last_modified_since all'inizio della giornata

  • last_modified_before fino alla fine della giornata

last_modified_before

Timestamp

Se specificato, vengono trasferiti solo gli oggetti con un "ora dell'ultima modifica" precedente a questo timestamp e gli oggetti che non hanno un'"ora dell'ultima modifica".

PauseTransferOperationRequest

Richiesta passata a PauseTransferOperation.

Campi
name

string

Obbligatorio. Il nome dell'operazione di trasferimento.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata name:

  • storagetransfer.operations.pause

PosixFilesystem

Una risorsa del file system POSIX.

Campi
root_directory

string

Percorso della directory principale del file system.

ReplicationSpec

Specifica la configurazione di un job di replica tra bucket. La replica tra bucket copia gli oggetti nuovi o aggiornati da un bucket Cloud Storage di origine a un bucket Cloud Storage di destinazione. Gli oggetti esistenti nel bucket di origine non vengono copiati da un nuovo job di replica tra bucket.

Campi
object_conditions

ObjectConditions

Condizioni degli oggetti che determinano quali oggetti vengono trasferiti. Per i job di replica, sono supportati solo include_prefixes e exclude_prefixes.

transfer_options

TransferOptions

Specifica le opzioni di metadati da applicare durante la replica. Le opzioni di eliminazione non sono supportate. Se viene specificata un'opzione di eliminazione, la richiesta non va a buon fine con un errore INVALID_ARGUMENT.

Campo unione data_source. L'origine dati da replicare. data_source può essere solo uno dei seguenti:
gcs_data_source

GcsData

Il bucket Cloud Storage da cui replicare gli oggetti.

Campo unione data_sink. La destinazione per gli oggetti replicati. data_sink può essere solo uno dei seguenti:
gcs_data_sink

GcsData

Il bucket Cloud Storage a cui replicare gli oggetti.

ResumeTransferOperationRequest

Richiesta passata a ResumeTransferOperation.

Campi
name

string

Obbligatorio. Il nome dell'operazione di trasferimento.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata name:

  • storagetransfer.operations.resume

RunTransferJobRequest

Richiesta passata a RunTransferJob.

Campi
job_name

string

Obbligatorio. Il nome del job di trasferimento.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata jobName:

  • storagetransfer.jobs.run
project_id

string

Obbligatorio. L'ID del progetto Google Cloud proprietario del job di trasferimento.

S3CompatibleMetadata

S3CompatibleMetadata contiene i campi dei metadati che si applicano ai tipi di base di provider di dati compatibili con S3.

Campi
auth_method

AuthMethod

Specifica il metodo di autenticazione e autorizzazione utilizzato dal servizio di archiviazione. Se non specificato, il servizio di trasferimento tenterà di determinare il metodo di autenticazione corretto da utilizzare.

request_model

RequestModel

Specifica il modello di richiesta API utilizzato per chiamare il servizio di archiviazione. Se non specificato, viene utilizzato il valore predefinito di RequestModel REQUEST_MODEL_VIRTUAL_HOSTED_STYLE.

protocol

NetworkProtocol

Specifica il protocollo di rete dell'agente. Se non specificato, viene utilizzato il valore predefinito di NetworkProtocol NETWORK_PROTOCOL_HTTPS.

list_api

ListApi

L'API Listing da utilizzare per scoprire gli oggetti. Se non specificato, il servizio di trasferimento tenterà di determinare l'API corretta da utilizzare.

AuthMethod

Il metodo di autenticazione e autorizzazione utilizzato dal servizio di archiviazione.

Enum
AUTH_METHOD_UNSPECIFIED AuthMethod non è specificato.
AUTH_METHOD_AWS_SIGNATURE_V4 Richieste di autenticazione con AWS SigV4.
AUTH_METHOD_AWS_SIGNATURE_V2 Richieste di autenticazione con la versione 2 della firma di AWS.

ListApi

L'API Listing da utilizzare per scoprire gli oggetti.

Enum
LIST_API_UNSPECIFIED ListApi non è specificato.
LIST_OBJECTS_V2 Esegui la scheda utilizzando l'API ListObjectsV2.
LIST_OBJECTS API ListObjects precedente.

NetworkProtocol

Il protocollo di rete dell'agente per accedere al servizio di archiviazione.

Enum
NETWORK_PROTOCOL_UNSPECIFIED NetworkProtocol non è specificato.
NETWORK_PROTOCOL_HTTPS Esegui le richieste utilizzando HTTPS.
NETWORK_PROTOCOL_HTTP Non consigliato: i dati vengono inviati in testo normale. Questo metodo è appropriato solo all'interno di una rete chiusa o per i dati disponibili pubblicamente. Esegui richieste utilizzando HTTP.

RequestModel

Il modello di richiesta dell'API.

Enum
REQUEST_MODEL_UNSPECIFIED RequestModel non è specificato.
REQUEST_MODEL_VIRTUAL_HOSTED_STYLE Esegui le richieste utilizzando lo stile con hosting virtuale. Esempio: https://bucket-name.s3.region.amazonaws.com/key-name
REQUEST_MODEL_PATH_STYLE Esegui le richieste utilizzando lo stile percorso. Esempio: https://s3.region.amazonaws.com/bucket-name/key-name

Pianificazione

I trasferimenti possono essere pianificati per essere eseguiti periodicamente o una sola volta.

Campi
schedule_start_date

Date

Obbligatorio. La data di inizio di un trasferimento. I limiti di data vengono determinati in base all'ora UTC. Se schedule_start_date e start_time_of_day si riferiscono al passato rispetto all'ora di creazione del job, il trasferimento inizia il giorno successivo alla pianificazione della richiesta di trasferimento.

Nota: quando avvii i job a mezzanotte o poco prima, è possibile che un job inizi più tardi del previsto. Ad esempio, se invii una richiesta in uscita il 1° giugno un millisecondo prima della mezzanotte UTC e il server di Storage Transfer Service riceve la richiesta il 2 giugno, viene creato un TransferJob con schedule_start_date impostato su 2 giugno e un start_time_of_day impostato su mezzanotte UTC. Il primo TransferOperation programmato avrà luogo il 3 giugno a mezzanotte UTC.

schedule_end_date

Date

L'ultimo giorno in cui viene eseguito un trasferimento. I limiti di data vengono determinati in base all'ora UTC. Un job viene eseguito una volta ogni 24 ore nel rispetto delle seguenti linee guida:

  • Se schedule_end_date e schedule_start_date sono uguali e in futuro rispetto a UTC, il trasferimento viene eseguito una sola volta.
  • Se schedule_end_date è successivo a schedule_start_date e schedule_end_date è nel futuro rispetto a UTC, il job viene eseguito ogni giorno dalle ore start_time_of_day alle ore schedule_end_date.
start_time_of_day

TimeOfDay

L'ora in UTC in cui è pianificata l'esecuzione di un job di trasferimento. I trasferimenti potrebbero iniziare in un secondo momento.

Se start_time_of_day non è specificato:

  • I trasferimenti una tantum vengono eseguiti immediatamente.
  • I trasferimenti ricorrenti vengono eseguiti immediatamente e ogni giorno a mezzanotte (UTC) fino al giorno schedule_end_date.

Se è specificato start_time_of_day:

  • I trasferimenti una tantum vengono eseguiti all'ora specificata.
  • I trasferimenti ricorrenti vengono eseguiti ogni giorno all'ora specificata fino al giorno schedule_end_date.
end_time_of_day

TimeOfDay

L'ora in UTC in cui non sono programmate altre operazioni di trasferimento. Se combinato con schedule_end_date, end_time_of_day specifica la data e l'ora di fine per l'avvio di nuove operazioni di trasferimento. Questo campo deve essere maggiore o uguale al timestamp corrispondente alla combinazione di schedule_start_date e start_time_of_day ed è soggetto a quanto segue:

  • Se end_time_of_day non è impostato e schedule_end_date è impostato, per end_time_of_day viene utilizzato un valore predefinito di 23:59:59.

  • Se end_time_of_day è impostato e schedule_end_date non è impostato, viene restituito INVALID_ARGUMENT.

repeat_interval

Duration

Intervallo tra l'inizio di ogni TransferOperation pianificata. Se non specificato, il valore predefinito è 24 ore. Questo valore non può essere inferiore a 1 ora.

TransferCounters

Una raccolta di contatori che segnalano l'avanzamento di un'operazione di trasferimento.

Campi
objects_found_from_source

int64

Oggetti trovati nell'origine dati che sono pianificati per il trasferimento, esclusi quelli filtrati in base alle condizioni degli oggetti o ignorati a causa della sincronizzazione.

bytes_found_from_source

int64

Byte trovati nell'origine dati che sono pianificati per il trasferimento, esclusi quelli filtrati in base alle condizioni degli oggetti o ignorati a causa della sincronizzazione.

objects_found_only_from_sink

int64

Oggetti trovati solo nell'elemento di destinazione dati e la cui eliminazione è pianificata.

bytes_found_only_from_sink

int64

Byte trovati solo nell'elemento di destinazione dati che sono pianificati per l'eliminazione.

objects_from_source_skipped_by_sync

int64

Oggetti nell'origine dati che non vengono trasferiti perché esistono già nell'elemento di destinazione dati.

bytes_from_source_skipped_by_sync

int64

Byte nell'origine dati che non vengono trasferiti perché esistono già nell'elemento di destinazione dati.

objects_copied_to_sink

int64

Oggetti che vengono copiati nell'elemento di destinazione dati.

bytes_copied_to_sink

int64

Byte che vengono copiati nell'area di destinazione dei dati.

objects_deleted_from_source

int64

Oggetti eliminati dall'origine dati.

bytes_deleted_from_source

int64

Byte eliminati dall'origine dati.

objects_deleted_from_sink

int64

Oggetti eliminati dall'elemento di destinazione dati.

bytes_deleted_from_sink

int64

Byte eliminati dall'elemento di destinazione dati.

objects_from_source_failed

int64

Oggetti dell'origine dati che non sono stati trasferiti o che non sono stati eliminati dopo il trasferimento.

bytes_from_source_failed

int64

Byte nell'origine dati che non sono stati trasferiti o che non sono stati eliminati dopo il trasferimento.

objects_failed_to_delete_from_sink

int64

Oggetti che non è stato possibile eliminare dall'elemento di destinazione dati.

bytes_failed_to_delete_from_sink

int64

Byte che non è stato possibile eliminare dall'elemento di destinazione dati.

directories_found_from_source

int64

Solo per i trasferimenti che coinvolgono PosixFilesystem.

Numero di directory trovate durante l'elenco. Ad esempio, se la directory principale del trasferimento è base/ e ci sono altre due directory, a/ e b/, in questa directory, il conteggio dopo l'elenco di base/, base/a/ e base/b/ è 3.

directories_failed_to_list_from_source

int64

Solo per i trasferimenti che coinvolgono PosixFilesystem.

Numero di errori relativi alle schede per ogni directory trovata all'origine. I potenziali errori durante l'elenco di una directory includono errori di autorizzazione o di blocco. Se l'elenco di una directory non va a buon fine, nessun file della directory viene trasferito.

directories_successfully_listed_from_source

int64

Solo per i trasferimenti che coinvolgono PosixFilesystem.

Numero di schede corrette per ogni directory trovata all'origine.

intermediate_objects_cleaned_up

int64

Numero di oggetti intermedi di cui è stato eseguito il cleanup.

intermediate_objects_failed_cleaned_up

int64

Numero di oggetti intermedi di cui non è stato possibile eseguire la pulizia.

TransferJob

Questa risorsa rappresenta la configurazione di un job di trasferimento che viene eseguito periodicamente.

Campi
name

string

Un nome univoco (all'interno del progetto di trasferimento) assegnato al momento della creazione del job. Se questo campo è vuoto in una richiesta CreateTransferJobRequest, Storage Transfer Service assegna un nome univoco. In caso contrario, il nome specificato viene utilizzato come nome univoco per questo job.

Se il nome specificato è in uso da un job, la richiesta di creazione non va a buon fine con un errore ALREADY_EXISTS.

Questo nome deve iniziare con il prefisso "transferJobs/" e terminare con una lettera o un numero e non deve contenere più di 128 caratteri. Per i trasferimenti che coinvolgono PosixFilesystem, questo nome deve iniziare specificamente con transferJobs/OPI. Per tutti gli altri tipi di trasferimento, questo nome non deve iniziare con transferJobs/OPI.

Esempio di Non-PosixFilesystem: "transferJobs/^(?!OPI)[A-Za-z0-9-._~]*[A-Za-z0-9]$"

Esempio di PosixFilesystem: "transferJobs/OPI^[A-Za-z0-9-._~]*[A-Za-z0-9]$"

Le applicazioni non devono fare affidamento sull'applicazione dei requisiti di denominazione che coinvolgono OPI.

I nomi dei job non validi non vengono eseguiti e viene visualizzato un errore INVALID_ARGUMENT.

description

string

Una descrizione fornita dall'utente per il job. La lunghezza massima è di 1024 byte se codificata in Unicode.

project_id

string

L'ID del progetto Google Cloud proprietario del job.

transfer_spec

TransferSpec

Specifiche di trasferimento.

replication_spec

ReplicationSpec

Specifica di replica.

notification_config

NotificationConfig

Configurazione delle notifiche.

logging_config

LoggingConfig

Configurazione del logging.

schedule

Schedule

Specifica la pianificazione del job di trasferimento. Questo è un campo facoltativo. Se il campo non è impostato, il job non esegue mai un trasferimento, a meno che non chiami RunTransferJob o aggiorni il job in modo che abbia una pianificazione non vuota.

event_stream

EventStream

Specifica lo stream di eventi per il job di trasferimento per i trasferimenti basati su eventi. Quando viene specificato EventStream, i campi della pianificazione vengono ignorati.

status

Status

Stato del job. Questo valore DEVE essere specificato per CreateTransferJobRequests.

Nota:l'effetto del nuovo stato del job si verifica durante un'esecuzione successiva del job. Ad esempio, se modifichi lo stato del job da ENABLED a DISABLED e un'operazione generata dal trasferimento è in esecuzione, la modifica dello stato non influisce sull'operazione corrente.

creation_time

Timestamp

Solo output. L'ora in cui è stato creato il job di trasferimento.

last_modification_time

Timestamp

Solo output. L'ora dell'ultima modifica del job di trasferimento.

deletion_time

Timestamp

Solo output. L'ora in cui è stato eliminato il job di trasferimento.

latest_operation_name

string

Il nome dell'operazione TransferOperation di questo JobConfig avviata più di recente. Presente se è stata creata una TransferOperation per questa JobConfig.

Stato

Lo stato del job di trasferimento.

Enum
STATUS_UNSPECIFIED Zero è un valore non valido.
ENABLED I nuovi trasferimenti vengono eseguiti in base alla pianificazione.
DISABLED I nuovi trasferimenti non sono pianificati.
DELETED Si tratta di uno stato di eliminazione temporanea. Dopo che un job di trasferimento è impostato su questo stato, il job e tutte le esecuzioni di trasferimento sono soggetti alla raccolta dei rifiuti. I job di trasferimento diventano idonei per il garbage collection 30 giorni dopo che il relativo stato è impostato su DELETED.

TransferManifest

Specifica la posizione del file manifest.

Campi
location

string

Specifica il percorso del file manifest in Cloud Storage. L'account di servizio gestito da Google per il trasferimento deve disporre dell'autorizzazione storage.objects.get per questo oggetto. Un esempio di percorso è gs://bucket_name/path/manifest.csv.

TransferOperation

Una descrizione dell'esecuzione di un trasferimento.

Campi
name

string

Un ID univoco a livello globale assegnato dal sistema.

project_id

string

L'ID del progetto Google Cloud proprietario dell'operazione.

transfer_spec

TransferSpec

Specifiche di trasferimento.

notification_config

NotificationConfig

Configurazione delle notifiche.

logging_config

LoggingConfig

Configurazione di Cloud Logging.

start_time

Timestamp

Ora di inizio dell'esecuzione di questo trasferimento.

end_time

Timestamp

Ora di fine dell'esecuzione di questo trasferimento.

status

Status

Stato dell'operazione di trasferimento.

counters

TransferCounters

Informazioni sullo stato di avanzamento dell'operazione di trasferimento.

error_breakdowns[]

ErrorSummary

Riassume gli errori rilevati con le voci di log degli errori di esempio.

transfer_job_name

string

Il nome del job di trasferimento che attiva questa operazione di trasferimento.

Stato

Lo stato di un'operazione di trasferimento.

Enum
STATUS_UNSPECIFIED Zero è un valore non valido.
IN_PROGRESS In corso.
PAUSED In pausa
SUCCESS Operazione completata correttamente.
FAILED Interrotto a causa di un errore non recuperabile.
ABORTED Interrotto dall'utente.
QUEUED Ritardo temporaneo del sistema. Non è richiesta alcuna azione da parte dell'utente.
SUSPENDING L'operazione sta sospendendo e prosciugando il lavoro in corso fino al completamento.

TransferOptions

TransferOptions definisce le azioni da eseguire sugli oggetti in un trasferimento.

Campi
overwrite_objects_already_existing_in_sink

bool

Quando sovrascrivere gli oggetti già esistenti nello sink. Per impostazione predefinita, vengono sovrascritti solo gli oggetti diversi dall'origine. Se il valore è true, tutti gli oggetti nel sink il cui nome corrisponde a un oggetto nell'origine vengono sovrascritti con l'oggetto di origine.

delete_objects_unique_in_sink

bool

Indica se gli oggetti esistenti solo nel canale di destinazione devono essere eliminati.

Nota: questa opzione e delete_objects_from_source_after_transfer sono mutuamente esclusive.

delete_objects_from_source_after_transfer

bool

Indica se gli oggetti devono essere eliminati dall'origine dopo il trasferimento all'area di destinazione.

Nota: questa opzione e delete_objects_unique_in_sink sono mutuamente esclusive.

overwrite_when

OverwriteWhen

Quando sovrascrivere gli oggetti già esistenti nello sink. Se non viene impostato, il comportamento di sovrascrittura è determinato da overwrite_objects_already_existing_in_sink.

metadata_options

MetadataOptions

Rappresenta le opzioni di metadati selezionate per un job di trasferimento.

OverwriteWhen

Specifica quando sovrascrivere un oggetto nel sink quando nell'origine viene trovato un oggetto con nome corrispondente.

Enum
OVERWRITE_WHEN_UNSPECIFIED Il comportamento di sovrascrittura non è specificato.
DIFFERENT Sovrascrivi gli oggetti di destinazione con gli oggetti di origine, solo se hanno lo stesso nome, ma valori di checksum o ETag HTTP diversi.
NEVER Non sovrascrive mai un oggetto di destinazione se un oggetto di origine ha lo stesso nome. In questo caso, l'oggetto di origine non viene trasferito.
ALWAYS Sovrascrivi sempre l'oggetto di destinazione con l'oggetto di origine, anche se i valori degli ETag o dei checksum HTTP sono gli stessi.

TransferSpec

Configurazione per l'esecuzione di un trasferimento.

Campi
object_conditions

ObjectConditions

Solo gli oggetti che soddisfano queste condizioni sono inclusi nell'insieme di oggetti di origine dati e destinazione dati. Le condizioni degli oggetti basate sulla "data dell'ultima modifica" degli oggetti non escludono gli oggetti in un'area di destinazione dati.

transfer_options

TransferOptions

Se l'opzione delete_objects_unique_in_sink è true e sono specificate condizioni degli oggetti basate sul tempo come "data dell'ultima modifica", la richiesta non va a buon fine con un errore INVALID_ARGUMENT.

transfer_manifest

TransferManifest

Un file manifest fornisce un elenco di oggetti da trasferire dall'origine dati. Questo campo indica la posizione del file manifest. In caso contrario, viene utilizzato l'intero bucket di origine. Si applicano comunque le condizioni ObjectConditions.

source_agent_pool_name

string

Specifica il nome del pool di agenti associato all'origine dati POSIX. Se non specificato, viene utilizzato il nome predefinito.

sink_agent_pool_name

string

Specifica il nome del pool di agenti associato all'emissario dati posix. Se non specificato, viene utilizzato il nome predefinito.

Campo unione data_sink. Il sink di scrittura per i dati. data_sink può essere solo uno dei seguenti:
gcs_data_sink

GcsData

Un'area di destinazione dei dati Cloud Storage.

posix_data_sink

PosixFilesystem

Un'area di destinazione dei dati del file system POSIX.

Campo unione data_source. L'origine di lettura dei dati. data_source può essere solo uno dei seguenti:
gcs_data_source

GcsData

Un'origine dati Cloud Storage.

aws_s3_data_source

AwsS3Data

Un'origine dati AWS S3.

http_data_source

HttpData

Un'origine dati URL HTTP.

posix_data_source

PosixFilesystem

Un'origine dati del file system POSIX.

azure_blob_storage_data_source

AzureBlobStorageData

Un'origine dati Azure Blob Storage.

aws_s3_compatible_data_source

AwsS3CompatibleData

Un'origine dati compatibile con AWS S3.

hdfs_data_source

HdfsData

Un'origine dati del cluster HDFS.

Campo unione intermediate_data_location.

intermediate_data_location può essere solo uno dei seguenti:

gcs_intermediate_data_location

GcsData

Per i trasferimenti tra file system, specifica un bucket Cloud Storage da utilizzare come posizione intermedia attraverso la quale trasferire i dati.

Per ulteriori informazioni, vedi Trasferire dati tra file system.

UpdateAgentPoolRequest

Specifica la richiesta passata ad UpdateAgentPool.

Campi
agent_pool

AgentPool

Obbligatorio. Il pool di agenti da aggiornare. Per agent_pool è previsto che vengano specificati i seguenti campi:

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata agentPool:

  • storagetransfer.agentpools.update
update_mask

FieldMask

La maschera di campo dei campi in agentPool da aggiornare in questa richiesta. I seguenti campi agentPool possono essere aggiornati:

UpdateTransferJobRequest

Richiesta passata ad UpdateTransferJob.

Campi
job_name

string

Obbligatorio. Il nome del job da aggiornare.

L'autorizzazione richiede la seguente autorizzazione IAM sulla risorsa specificata jobName:

  • storagetransfer.jobs.update
project_id

string

Obbligatorio. L'ID del progetto Google Cloud proprietario del job.

transfer_job

TransferJob

Obbligatorio. Il job da aggiornare. Per transferJob è previsto che vengano specificati uno o più dei cinque campi: description, transfer_spec, notification_config, logging_config e status. Un UpdateTransferJobRequest che specifica altri campi viene rifiutato con l'errore INVALID_ARGUMENT. L'aggiornamento dello stato di un job su DELETED richiede l'autorizzazione storagetransfer.jobs.delete.

update_transfer_job_field_mask

FieldMask

La maschera dei campi in transferJob da aggiornare in questa richiesta. I campi in transferJob che possono essere aggiornati sono: description, transfer_spec, notification_config, logging_config e status. Per aggiornare il transfer_spec del job, è necessario fornire una specifica di trasferimento completa. Una specifica incompleta con campi obbligatori mancanti viene rifiutata con l'errore INVALID_ARGUMENT.