Todos os produtos
Search
Central de documentação

Object Storage Service:PutBucketLogging

Última atualização: Jul 03, 2026

Ative o registro de logs para um bucket. Após a ativação e configuração do logging, o Object Storage Service (OSS) gera objetos de log com base em uma convenção de nomenclatura predefinida. Assim, os logs de acesso são gerados e armazenados no bucket especificado a cada hora.

Observações de uso

  • A permissão oss:PutBucketLogging é necessária para ativar o logging de um bucket por meio da operação PutBucketLogging. Para mais informações, consulte Conceder uma política personalizada.

  • O bucket de origem (para o qual os logs são gerados) e o bucket de destino (onde os logs são armazenados) podem ser iguais ou diferentes. No entanto, o bucket de destino deve pertencer à mesma conta Alibaba Cloud e estar na mesma região do bucket de origem.

  • O OSS gera logs de acesso ao bucket a cada hora. Contudo, as requisições de uma determinada hora podem constar no log da hora anterior ou da seguinte.

    Para mais informações sobre as convenções de nomenclatura dos objetos de log e o formato dos logs, consulte Logging.

  • Enquanto o logging estiver ativo, o OSS continuará gerando objetos de log. Exclua os objetos desnecessários para reduzir custos de armazenamento.

    Configure regras de ciclo de vida para excluir objetos de log regularmente. Para mais informações, consulte Regras de ciclo de vida baseadas na última modificação.

  • Novos campos podem ser adicionados aos logs do OSS. Recomendamos que os desenvolvedores considerem possíveis problemas de compatibilidade ao criar ferramentas de processamento de logs.

Permissões

Por padrão, uma conta Alibaba Cloud possui permissões totais. Usuários RAM ou funções RAM vinculados a uma conta Alibaba Cloud não possuem nenhuma permissão por padrão. A conta Alibaba Cloud ou o administrador da conta deve conceder permissões de operação por meio de políticas do RAM ou Bucket Policy.

API

Action

Descrição

PutBucketLogging

oss:PutBucketLogging

Ativa o logging para um bucket.

oss:PutObject

Ao ativar o logging de um bucket, se os logs forem gravados em outro bucket, essa permissão será necessária para o bucket de destino.

Sintaxe da requisição

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>

Cabeçalhos da requisição

Uma requisição PutBucketLogging contém apenas cabeçalhos comuns de requisição. Para mais informações, consulte Cabeçalhos comuns de requisição.

Elementos da requisição

Elemento

Tipo

Obrigatório

Exemplo

Descrição

BucketLoggingStatus

Container

Sim

N/A

Container que armazena as informações de status do logging.

Nós filhos: LoggingEnabled

Nós pais: nenhum

LoggingEnabled

Container

Este parâmetro é obrigatório ao ativar o logging.

N/A

Container que armazena as informações do log de acesso.

Nós filhos: TargetBucket, TargetPrefix e LoggingRole

Nós pais: BucketLoggingStatus

TargetBucket

String

Este parâmetro é obrigatório ao ativar o logging.

examplebucket

Bucket que armazena os logs de acesso.

Nós filhos: nenhum

Nós pais: BucketLoggingStatus e LoggingEnabled

TargetPrefix

String

Não

MyLog-

Prefixo dos objetos de log salvos. Este elemento pode ficar vazio.

Nós filhos: nenhum

Nós pais: BucketLoggingStatus e LoggingEnabled

LoggingRole

String

Não

AliyunOSSLoggingDefaultRole

Função com permissões para logging.

Nós filhos: nenhum

Nó pai: BucketLoggingStatus.LoggingEnabled

Cabeçalhos da resposta

Todos os cabeçalhos na resposta de uma requisição PutBucketLogging são cabeçalhos comuns de resposta. Para mais informações, consulte Cabeçalhos comuns de resposta.

Exemplos

Exemplos para buckets

  • Exemplo de requisição para ativar o logging

    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>

    Exemplo de resposta

    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
  • Exemplo de requisição para desativar o logging

    Para desativar o logging de um bucket, envie apenas um BucketLoggingStatus vazio. Exemplo:

    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>

    Exemplo de resposta

    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

    Exemplos para vector buckets

    Ao especificar o Host para um vector bucket, use o ID de região padrão da Alibaba Cloud (exemplo: cn-hangzhou ). Não utilize o ID de região legado do OSS (exemplo: oss-cn-hangzhou ) usado para buckets de uso geral.

    Exemplo de requisição para ativar o logging

    PUT /?logging HTTP/1.1
    Host: exampebucket-123***456.cn-hangzhou.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"
        }
      }
    }

    Exemplo de resposta

    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

SDKs do OSS

Use os SDKs do OSS nas linguagens de programação abaixo para chamar a operação PutBucketLogging:

ossutil

Para obter informações sobre o comando do ossutil correspondente à operação PutBucketLogging, consulte put-bucket-logging.

Códigos de erro

Código de erro

Código de status HTTP

Descrição

NoSuchBucket

404

O bucket de source não existe.

InvalidTargetBucketForLogging

400

O bucket de source e o bucket de destino não pertencem ao mesmo data center.

InvalidDigest

400

O valor Content-MD5 do corpo da mensagem é inconsistente com o valor Content-MD5 do cabeçalho da requisição.

MalformedXML

400

O formato XML na requisição é inválido.

InvalidTargetBucketForLogging

403

O solicitante não é o proprietário do bucket de destino.

AccessDenied

403

O solicitante não é o proprietário do bucket de source.