Questa pagina descrive come configurare e visualizzare Cloud Logging per Log di Storage Transfer Service.
Cloud Logging per Storage Transfer Service è supportato per tutti i trasferimenti. FIND
le operazioni non vengono registrate per i trasferimenti basati su agente.
I trasferimenti del file system possono inoltre configurare log di trasferimento del file system.
Prima di iniziare
Prima di iniziare, verifica di avere accesso a Cloud Logging. Consigliamo il ruolo Visualizzatore log (roles/logging.viewer) di Identity and Access Management. Per ulteriori informazioni sull'accesso ai log, consulta Controllo dell'accesso con IAM.
Di seguito viene descritto come verificare e concedere l'accesso IAM:
- Visualizza accesso attuale per verificare l'accesso di ogni entità.
- Concedi un ruolo a pertinenti al tuo progetto.
Azioni registrabili
È possibile registrare le seguenti azioni:
FIND
: sta cercando attività da svolgere, ad esempio elencare i file in una directory o elencare in un bucket. Non supportato per i trasferimenti basati su agenti.COPY
: copia di file o oggetti in Cloud Storage.DELETE
: eliminazione di file o oggetti nell'origine o nella destinazione. Per i trasferimenti tra due file system, vengono registrati anche l'eliminazione dei file dal bucket Cloud Storage intermedio.
Per ogni azione, puoi scegliere di registrare gli stati di successo e/o errore.
Abilita il logging
Per abilitare il logging, specifica le azioni e gli stati da registrare.
Interfaccia a riga di comando gcloud
Quando crei un job di trasferimento con gcloud transfer jobs create
, utilizza i seguenti flag per attivare il logging:
gcloud transfer jobs create SOURCE DESTINATION \
--log-actions=copy,delete,find \
--log-action-states=succeeded,failed
Devi specificare almeno un valore per ogni flag.
REST
Per creare una configurazione di logging, utilizza
transferJobs.create
con un
LoggingConfig
:
{
"name":"transferJobs/myFirstTransfer",
"status": "ENABLED",
"projectId": "test-id-001",
"loggingConfig": {
"logActions": ["FIND", "DELETE", "COPY"],
"logActionStates": ["SUCCEEDED", "FAILED"],
},
"transferSpec": {
"awsS3DataSource": {
"bucketName": "AWS_SOURCE_NAME",
"awsAccessKey": {
"accessKeyId": "AWS_ACCESS_KEY_ID",
"secretAccessKey": "AWS_SECRET_ACCESS_KEY"
}
},
"gcsDataSink": {
"bucketName": "destination_bucket",
"path": "foo/bar/"
},
}
}
Modifica loggingConfig
in modo da includere logActions
e
logActionStates
specifici da registrare. Ad esempio, per registrare quando le azioni di copia e ricerca non riescono,
fornisci quanto segue loggingConfig
:
"loggingConfig": {
"logActions": ["COPY", "FIND"],
"logActionStates": ["FAILED"],
}
Aggiorna una configurazione di logging
Interfaccia a riga di comando gcloud
Per aggiornare la configurazione di logging di un job esistente, utilizza i flag appropriati con il comando gcloud transfer jobs update
:
gcloud transfer jobs update NAME \
--log-actions=copy,delete,find \
--log-action-states=succeeded,failed
Per disabilitare il logging per questo job, specifica --clear-log-config
:
gcloud transfer jobs update NAME --clear-log-config
REST
Per aggiornare la configurazione del logging di un job di trasferimento esistente, utilizza
transferJobs.patch
con
LoggingConfig
:
{
"projectId": "test-id-001",
"transferJob": {
"loggingConfig": {
"logActions": ["FIND", "DELETE", "COPY"],
"logActionStates": ["SUCCEEDED", "FAILED"],
},
},
"updateTransferJobFieldMask": "loggingConfig"
}
Il parametro updateTransferJobFieldMask
specifica il campo in cui viene eseguito l'aggiornamento
questa richiesta ed è obbligatorio.
Per disabilitare il logging per questo job, invia un elemento loggingConfig
con elenchi vuoti per
logActions
e logActionStates
:
{
"projectId": "test-id-001",
"transferJob": {
"loggingConfig": {
"logActions": [],
"logActionStates": [],
},
},
"updateTransferJobFieldMask": "loggingConfig"
}
Visualizza i log
Per visualizzare i log di trasferimento:
Console Google Cloud
Vai al menu di navigazione di Google Cloud menu e seleziona Logging > Esplora log :<br\></br\>
Seleziona un progetto Google Cloud.
Nel menu Esegui l'upgrade, passa da Visualizzatore log legacy a Esplora log.
Per filtrare i log in modo da visualizzare solo le voci di Storage Transfer Service, digita
storage_transfer_job
nel campo della query e fai clic su Esegui query.Nel riquadro Risultati delle query, fai clic su Modifica ora per cambiare l'ora. per il quale restituire i risultati.
Per ulteriori informazioni sull'uso di Esplora log, consulta Utilizzo del Esplora log.
Interfaccia a riga di comando gcloud
Per utilizzare gcloud CLI per cercare Storage Transfer Service
i log, utilizza
gcloud logging read
.
Specifica un filtro per limitare i risultati ai log di Storage Transfer Service.
gcloud logging read "resource.type=storage_transfer_job"
API Cloud Logging
Utilizza la entries.list
Metodo API Cloud Logging.
Per filtrare i risultati in modo da includere solo le voci correlate a Storage Transfer Service,
usa il campo filter
. Di seguito è riportato un esempio di oggetto di richiesta JSON.
{
"resourceNames":
[
"projects/my-project-name"
],
"orderBy": "timestamp desc",
"filter": "resource.type=\"storage_transfer_job\""
}
Formato del log di trasferimento
La seguente sezione descrive i campi per i log di Storage Transfer Service.
Tutti i campi specifici di Storage Transfer Service sono contenuti in un oggetto
jsonPayload
.
FIND
azioni
{
"jsonPayload": {
"@type": "type.googleapis.com/google.storagetransfer.logging.TransferActivityLog",
"action": "FIND",
"completeTime": "2021-12-16T18:58:49.344509695Z",
"destinationContainer": {
"gcsBucket": {
"bucket": "my-bucket-2",
},
"type": "GCS",
},
"operation": "transferOperations/transferJobs-7876027868280507149--3019866490856027148",
"sourceContainer": {
"gcsBucket": {
"bucket": "my-bucket-1"
},
"type": "GCS"
},
"status": {
"statusCode": "OK"
}
}
}
COPY
e DELETE
azioni
{
"jsonPayload": {
"@type": "type.googleapis.com/google.storagetransfer.logging.TransferActivityLog",
"action": "COPY",
"completeTime": "2021-12-16T18:59:00.510509049Z",
"destinationObject": {
"gcsObject": {
"bucket": "my-bucket-2",
"objectKey": "README.md"
},
"type": "GCS",
},
"operation": "transferOperations/transferJobs-7876027868280507149--3019866490856027148",
"sourceObject": {
"gcsObject": {
"bucket": "my-bucket-1",
"lastModifiedTime": "2021-12-07T16:41:09.456Z",
"md5": "WgnCOIdfCXNTUDpQJSKb2w==",
"objectKey": "README.md",
},
"type": "GCS",
},
"status": {
"statusCode": "OK"
}
}
}
Campo log | Descrizione |
---|---|
|
|
@type |
Il valore è sempre
type.googleapis.com/google.storagetransfer.logging.TransferActivityLog .
|
action |
Descrive l'azione di questa particolare attività. Il valore sarà uno dei seguenti:
|
completeTime |
Il timestamp conforme a ISO 8601 al termine dell'operazione. |
destinationContainer |
Presente solo per le operazioni Il container di destinazione per questo trasferimento. Contiene due campi secondari:
|
destinationObject |
Presente solo per Informazioni sull'oggetto nella destinazione. Contiene due campi secondari:
Ad esempio: "destinationObject": { "type": "POSIX_FS", "posixFile": { "crc32c": "0", "path": "/tmp/data/filename.txt", "lastModifiedTime": "2022-09-22T04:33:45Z" } } |
operation |
Il team
transferOperations . |
sourceContainer |
Presente solo per le operazioni Il container di origine per questo trasferimento. Contiene due campi secondari:
Ad esempio: "sourceContainer": { "gcsBucket": { "bucket": "my-bucket-1" } type: "GCS" } |
sourceObject |
Presente solo per le operazioni Informazioni sull'oggetto di origine. Contiene due campi secondari:
Ad esempio: "sourceObject": { "gcsObject": { "bucket": "my-bucket-1" "lastModifiedTime": "2021-12-07T16:41:09.456Z" "md5": "WgnCOIdfCXNTUDpQJSKb2w==" "objectKey": "README.md" } type: "GCS" } |
status |
Lo stato dell'azione. Se |
Inoltre, il campo di primo livello resource
contiene i seguenti campi.
"resource": {
"labels": {
"job_id": "transferJobs/7876027868280507149"
"project_id": "my-project-id"
}
"type": "storage_transfer_job"
}
Campo log | Descrizione |
---|---|
resource.labels.job_id |
Il nome del job Storage Transfer Service a cui appartiene il log. |
resource.labels.project_id |
L'ID del progetto Google Cloud per questo trasferimento. |