En esta página, se describe cómo configurar y ver Cloud Logging para los registros del Servicio de transferencia de almacenamiento.
Cloud Logging para el Servicio de transferencia de almacenamiento es compatible con todas las transferencias. FIND
no se registran para transferencias basadas en agentes.
Además, las transferencias del sistema de archivos pueden configurar registros de transferencia del sistema de archivos.
Antes de comenzar
Antes de comenzar, verifica que tengas acceso a Cloud Logging. Recomendamos el rol Visualizador de registros (roles/logging.viewer) de Identity and Access Management. Para obtener más información sobre el acceso de Logging, consulta Control de acceso con IAM.
A continuación, se describe cómo verificar y otorgar el acceso a IAM:
- Visualiza el acceso actual para verificar el acceso que tiene cada principal.
- Otorga una función a los principales relevantes de tu proyecto.
Acciones registrables
Se pueden registrar las siguientes acciones:
FIND
: Buscar trabajo para hacer, como enumerar archivos en un directorio o enumerar objetos en un bucket. No es compatible con las transferencias basadas en agentes.COPY
: Copia objetos o archivos a Cloud Storage.DELETE
: Borra objetos o archivos en el origen o en el destino. Para de datos entre dos sistemas de archivos y registra la eliminación de archivos bucket intermedio de Cloud Storage.
Para cada acción, puedes optar por registrar los estados de éxito o error.
Habilitar registro
Para habilitar el registro, especifica las acciones y los estados que se registrarán.
gcloud CLI
Cuando crees un trabajo de transferencia con gcloud transfer jobs create
, usa
las siguientes marcas para habilitar el registro:
gcloud transfer jobs create SOURCE DESTINATION \
--log-actions=copy,delete,find \
--log-action-states=succeeded,failed
Debes especificar al menos un valor para cada marca.
REST
Para crear una configuración de registro, usa 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/"
},
}
}
Ajusta loggingConfig
para incluir los logActions
y logActionStates
específicos que se registrarán. Por ejemplo, para registrar cuándo fallan las acciones de copia y búsqueda, proporciona el siguiente loggingConfig
:
"loggingConfig": {
"logActions": ["COPY", "FIND"],
"logActionStates": ["FAILED"],
}
Actualiza una configuración de registro
gcloud CLI
Para actualizar la configuración de registro de un trabajo existente, usa el
marcas con el comando gcloud transfer jobs update
:
gcloud transfer jobs update NAME \
--log-actions=copy,delete,find \
--log-action-states=succeeded,failed
Para inhabilitar el registro en este trabajo, especifica --clear-log-config
:
gcloud transfer jobs update NAME --clear-log-config
REST
Para actualizar la configuración de registro de un trabajo de transferencia existente, usa transferJobs.patch
con LoggingConfig
:
{
"projectId": "test-id-001",
"transferJob": {
"loggingConfig": {
"logActions": ["FIND", "DELETE", "COPY"],
"logActionStates": ["SUCCEEDED", "FAILED"],
},
},
"updateTransferJobFieldMask": "loggingConfig"
}
updateTransferJobFieldMask
especifica el campo que se está actualizando en
esta solicitud y es obligatoria.
Para inhabilitar el registro de esta tarea, envía un loggingConfig
con listas vacías para logActions
y logActionStates
:
{
"projectId": "test-id-001",
"transferJob": {
"loggingConfig": {
"logActions": [],
"logActionStates": [],
},
},
"updateTransferJobFieldMask": "loggingConfig"
}
Visualiza registros
Para ver los registros de transferencia, haz lo siguiente:
Consola de Google Cloud
Ve al menú de navegación de Google Cloud menu y selecciona Logging > Explorador de registros :<br\></br\>
Selecciona un proyecto de Google Cloud.
En el menú Actualizar (Upgrade), cambia del Visor de registros heredados a Explorador de registros.
Para filtrar tus registros de modo que solo muestren las entradas del Servicio de transferencia de almacenamiento, escribe
storage_transfer_job
en el campo de consulta y haz clic en Ejecutar consulta.En el panel Resultados de la consulta, haz clic en Editar hora para cambiar el período de los resultados mostrados.
Para obtener más información sobre el uso del Explorador de registros, consulta Usa el Explorador de registros.
gcloud CLI
Para usar la CLI de gcloud a fin de buscar registros del Servicio de transferencia de almacenamiento, usa el comando gcloud logging read
.
Especifica un filtro para limitar tus resultados a los registros del Servicio de transferencia de almacenamiento.
gcloud logging read "resource.type=storage_transfer_job"
API de Cloud Logging
Usa el método de la API de Cloud Logging entries.list
.
Para filtrar tus resultados y incluir solo las entradas relacionadas con el Servicio de transferencia de almacenamiento, usa el campo filter
. A continuación, se muestra un objeto de solicitud JSON de muestra.
{
"resourceNames":
[
"projects/my-project-name"
],
"orderBy": "timestamp desc",
"filter": "resource.type=\"storage_transfer_job\""
}
Formato de registro de transferencia
En la siguiente sección, se describen los campos para los registros del Servicio de transferencia de almacenamiento.
Todos los campos específicos del Servicio de transferencia de almacenamiento se encuentran dentro de un objeto jsonPayload
.
FIND
acciones
{
"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"
}
}
}
Acciones de COPY
y DELETE
{
"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 de registro | Descripción |
---|---|
|
|
@type |
El valor es siempre type.googleapis.com/google.storagetransfer.logging.TransferActivityLog . |
action |
Describe la acción de esta tarea en particular. Uno de los siguientes:
|
completeTime |
La marca de tiempo compatible con ISO 8601 en la que se completó la operación. |
destinationContainer |
Solo está presente para las operaciones El contenedor de destino de esta transferencia. Contiene dos subcampos:
|
destinationObject |
Solo está presente para las operaciones Es la información sobre el objeto en el destino. Contiene dos subcampos:
Por ejemplo: "destinationObject": { "type": "POSIX_FS", "posixFile": { "crc32c": "0", "path": "/tmp/data/filename.txt", "lastModifiedTime": "2022-09-22T04:33:45Z" } } |
operation |
El nombre
transferOperations completamente calificado. |
sourceContainer |
Solo está presente para las operaciones El contenedor de origen de esta transferencia. Contiene dos subcampos:
Por ejemplo: "sourceContainer": { "gcsBucket": { "bucket": "my-bucket-1" } type: "GCS" } |
sourceObject |
Solo está presente para las operaciones Información sobre el objeto de origen. Contiene dos subcampos:
Por ejemplo: "sourceObject": { "gcsObject": { "bucket": "my-bucket-1" "lastModifiedTime": "2021-12-07T16:41:09.456Z" "md5": "WgnCOIdfCXNTUDpQJSKb2w==" "objectKey": "README.md" } type: "GCS" } |
status |
El estado de la acción. Si |
Además, el campo de nivel superior resource
contiene los siguientes campos.
"resource": {
"labels": {
"job_id": "transferJobs/7876027868280507149"
"project_id": "my-project-id"
}
"type": "storage_transfer_job"
}
Campo de registro | Descripción |
---|---|
resource.labels.job_id |
Indica el nombre del trabajo del Servicio de transferencia de almacenamiento al que pertenece este registro. |
resource.labels.project_id |
Es el ID del proyecto de Google Cloud de esta transferencia. |