• Object Storage Service

obs
  1. Help Center
  2. Object Storage Service
  3. API Reference (Node.js SDK)
  4. Bucket-Related APIs
  5. PUT Bucket logging

PUT Bucket logging

API Description

You can use this API to set logging for a bucket. Ensure that the log delivery user group of the target bucket has WRITE and READ_ACP permissions. (For details, see PUT Bucket acl.)

Method Definition

ObsClient.setBucketLoggingConfiguration(parameter, callback)

Request Parameter

Field

Type

Optional or Mandatory

Description

Bucket

String

Mandatory

Bucket name

LoggingEnabled

Object

Optional

Log configuration information

  

TargetBucket

String

Mandatory

Target bucket for which logs are generated

TargetPrefix

String

Mandatory

Name prefix of a to-be-logged object in the target bucket

TargetGrants

Object

Optional

Grantees' ACL information

  

Grant

Array

Optional

List of grantees' permission information

  

Grantee

Object

Optional

Grantee

  

Type

String

Mandatory

Grantee type. Possible values are:

  • CanonicalUser
  • Group

Name

String

If Type is CanonicalUser, this field is optional. If Type is Group, this field must be null.

Grantee name

ID

String

If Type is CanonicalUser, this field is mandatory. If Type is Group, this field must be null.

ID of the domain to which the grantee belongs

URI

String

If Type is Group, this field is mandatory. If Type is CanonicalUser, this field must be null.

Grantee group. Possible values are:

  • ObsClient.enums.GroupAllUsers
  • ObsClient.enums.GroupAuthenticatedUsers

Permission

String

Optional

Granted permission. Possible values are:

  • ObsClient.enums.PermissionRead
  • ObsClient.enums.PermissionReadAcp
  • ObsClient.enums.PermissionWriteAcp
  • ObsClient.enums.PermissionFullControl

Returned Result (InterfaceResult)

Field

Type

Description

RequestId

String

Request ID returned by the OBS server

Sample Code

obsClient.setBucketLoggingConfiguration ({
       Bucket : 'bucketname',
       LoggingEnabled:{
              TargetBucket:'targetbucketname',
              TargetPrefix:'prefix',
              TargetGrants:{
                     Grant:[
                         {Grantee: {Type:'CanonicalUser',ID:'userid'},Permission: obsClient.enums.PermissionRead},
                         {Grantee: {Type:'Group',URI: obsClient.enums.GroupAllUsers},Permission: obsClient.enums.PermissionRead}
                     ]
              }
       }
},(err, result) => {
       if(err){
              console.error('Error-->' + err);
       }else{
              if(result.CommonMsg.Status < 300){
                     console.log('RequestId-->' + result.InterfaceResult.RequestId);
              }else{
                     console.log('Code-->' + result.CommonMsg.Code);
                     console.log('Message-->' + result.CommonMsg.Message);
              }
       }
});