Todos los productos
Search
Centro de documentos

Object Storage Service:PutBucketLogging

Última actualización: Sep 11, 2026

La operación PutBucketLogging se utiliza para habilitar la función de transferencia de registros en un bucket. Esta función genera archivos de registro cada hora con una convención de nombres fija y escribe los registros de acceso de OSS en el bucket que usted especifique.

Notas de uso

  • El permiso oss:PutBucketLogging es obligatorio para habilitar el registro de un bucket mediante la llamada a la operación PutBucketLogging. Para obtener más información, consulte Grant a custom policy.

  • El bucket de origen del que se generan los registros y el bucket de destino donde se almacenan pueden ser iguales o distintos. Sin embargo, el bucket de destino debe pertenecer a la misma cuenta de Alibaba Cloud y a la misma región que el bucket de origen.

  • OSS genera los registros de acceso del bucket cada hora. No obstante, las solicitudes de una hora determinada podrían registrarse en el archivo generado durante la hora anterior o la siguiente.

    Para obtener más información sobre las convenciones de nombres y el formato de los objetos de registro, consulte Logging.

  • OSS sigue generando objetos de registro hasta que usted deshabilite esta función. Elimine los objetos de registro que ya no necesite para reducir sus costos de almacenamiento.

    Puede configurar reglas de ciclo de vida para eliminar periódicamente los objetos de registro. Para obtener más información, consulte Lifecycle rules based on last modification time.

  • Es posible que se agreguen más campos a los registros de OSS. Se recomienda que los desarrolladores consideren posibles problemas de compatibilidad al crear herramientas de procesamiento de registros.

Permisos

De forma predeterminada, una cuenta de Alibaba Cloud tiene todos los permisos. Los usuarios o roles de RAM asociados a una cuenta de Alibaba Cloud no cuentan con ningún permiso de manera predeterminada. La cuenta de Alibaba Cloud o su administrador deben otorgar los permisos de operación mediante RAM policies o Bucket Policy.

API

Action

Descripción

PutBucketLogging

oss:PutBucketLogging

Habilita el registro de un bucket.

oss:PutObject

Si al habilitar el registro de un bucket los registros se escriben en otro bucket, este permiso es obligatorio para el bucket de destino.

Sintaxis de la solicitud

PUT /?logging HTTP/1.1
Date: GMT Date
Content-Length: ContentLength
Content-Type: application/xml
Authorization: SignatureValue 
Host: Host
<?xml version="1.0" encoding="UTF-8"?>
<BucketLoggingStatus>
    <LoggingEnabled>
        <TargetBucket>TargetBucket</TargetBucket>
        <TargetPrefix>TargetPrefix</TargetPrefix>
    </LoggingEnabled>
</BucketLoggingStatus>

Encabezados de la solicitud

Una solicitud PutBucketLogging solo contiene encabezados de solicitud comunes. Para obtener más información, consulte Common request headers.

Elementos de la solicitud

Elemento

Tipo

Obligatorio

Ejemplo

Descripción

BucketLoggingStatus

Contenedor

Sí

N/A

Contenedor que almacena la información del estado de registro.

Nodos secundarios: LoggingEnabled

Nodos primarios: ninguno

LoggingEnabled

Contenedor

Este parámetro es obligatorio cuando se habilita el registro.

N/A

Contenedor que almacena la información del registro de acceso.

Nodos secundarios: TargetBucket, TargetPrefix y LoggingRole

Nodos primarios: BucketLoggingStatus

TargetBucket

Cadena

Este parámetro es obligatorio cuando se habilita el registro.

examplebucket

Bucket donde se almacenan los registros de acceso.

Nodos secundarios: ninguno

Nodos primarios: BucketLoggingStatus y LoggingEnabled

TargetPrefix

Cadena

No

MyLog-

Prefijo de los objetos de registro guardados. Este elemento puede dejarse vacío.

Nodos secundarios: ninguno

Nodos primarios: BucketLoggingStatus y LoggingEnabled

LoggingRole

Cadena

No

AliyunOSSLoggingDefaultRole

Nombre del rol de RAM que autoriza a OSS a escribir registros, como AliyunOSSLoggingDefaultRole. Especifique el nombre del rol de RAM, no su ARN.

Nodos secundarios: ninguno

Nodo primario: BucketLoggingStatus.LoggingEnabled

Encabezados de la respuesta

Todos los encabezados de la respuesta a una solicitud PutBucketLogging son encabezados de respuesta comunes. Para obtener más información, consulte Common response headers.

Ejemplos

Ejemplos para buckets

  • Solicitud de ejemplo para habilitar el registro

    PUT /?logging HTTP/1.1
    Host: oss-example.oss-cn-hangzhou.aliyuncs.com
    Content-Length: 186
    Date: Thu, 17 Apr 2025 03:21:12 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
    
    <?xml version="1.0" encoding="UTF-8"?>
    <BucketLoggingStatus>
        <LoggingEnabled>
            <TargetBucket>examplebucket</TargetBucket>
            <TargetPrefix>MyLog-</TargetPrefix>
            <LoggingRole>AliyunOSSLoggingDefaultRole</LoggingRole>
        </LoggingEnabled>
    </BucketLoggingStatus>

    Respuesta de ejemplo

    HTTP/1.1 200 OK
    x-oss-request-id: 534B371674E888648906008B
    Date: Fri, 04 May 2012 03:21:12 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
  • Solicitud de ejemplo para deshabilitar el registro

    Para deshabilitar el registro de un bucket, envíe únicamente un elemento BucketLoggingStatus vacío. Ejemplo:

    PUT /?logging HTTP/1.1
    Host: oss-example.oss-cn-hangzhou.aliyuncs.com
    Content-Type: application/xml
    Content-Length: 86
    Date: Thu, 17 Apr 2025 04:21:12 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
    <?xml version="1.0" encoding="UTF-8"?>
    <BucketLoggingStatus>
    </BucketLoggingStatus>

    Respuesta de ejemplo

    HTTP/1.1 200 OK
    x-oss-request-id: 534B371674125A4D8906008B
    Date: Fri, 04 May 2012 04:21:12 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS

    Ejemplos para buckets vectoriales

    Al especificar el Host de un bucket vectorial, utilice el identificador de región estándar de Alibaba Cloud (por ejemplo: cn-hangzhou ). No use el identificador de región heredado de OSS (por ejemplo: oss-cn-hangzhou ) que se emplea en los buckets de propósito general.

    Solicitud de ejemplo para habilitar el registro

    PUT /?logging HTTP/1.1
    Host: examplebucket-123***456.cn-hangzhou-internal.oss-vectors.aliyuncs.com
    Content-Length: 186
    Content-Type: application/json
    Date: Thu, 17 Apr 2025 03:21:12 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
    
    {
      "BucketLoggingStatus": {
        "LoggingEnabled": {
          "TargetBucket": "examplebucket",
          "TargetPrefix": "MyLog-",
          "LoggingRole": "AliyunOSSLoggingDefaultRole"
        }
      }
    }

    Respuesta de ejemplo

    HTTP/1.1 200 OK
    x-oss-request-id: 534B371674E888648906008B
    Date: Fri, 04 May 2012 03:21:12 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS

SDK de OSS

Utilice los SDK de OSS de los siguientes lenguajes de programación para llamar a la operación PutBucketLogging:

ossutil

Para obtener información sobre el comando de ossutil correspondiente a la operación PutBucketLogging, consulte put-bucket-logging.

Códigos de error

Código de error

Código de estado HTTP

Descripción

NoSuchBucket

404

Mensaje de error devuelto porque el bucket de origen no existe.

InvalidTargetBucketForLogging

400

Mensaje de error devuelto porque el bucket de origen y el bucket de destino no pertenecen al mismo centro de datos.

InvalidDigest

400

Mensaje de error devuelto porque el valor Content-MD5 del cuerpo del mensaje no coincide con el valor Content-MD5 del encabezado de la solicitud.

MalformedXML

400

Mensaje de error devuelto porque el formato XML de la solicitud no es válido.

InvalidTargetBucketForLogging

403

Mensaje de error devuelto porque el solicitante no es el propietario del bucket de destino.

AccessDenied

403

Mensaje de error devuelto porque el solicitante no es el propietario del bucket de origen.