Each Amazon S3 bucket has an associated XML sub-resource that you can read and write in order to inspect or change the logging status for that bucket. The XML schema for the bucket logging status resource is common across SOAP and REST.
The BucketLoggingStatus element has the following structure.
Following is a list of elements that belong to the BucketLoggingStatus element.
To enable server access logging, Set or PUT a
BucketLoggingStatus with a nested LoggingEnabled
element. To disable server access logging, Set or PUT an empty
BucketLoggingStatus element.
In REST, the address of the BucketLoggingStatus resource for a bucket
'mybucket' is
http://s3.amazonaws.com/mybucket?logging. The
PUT and GET methods are valid for this resource.
For example, the following
request fetches the BucketLoggingStatus resource for mybucket.
GET ?logging HTTP/1.1 Host: mybucket.s3.amazonaws.com Date: Wed, 01 Mar 2006 12:00:00 GMT Authorization: AWSYOUR_AWS_ACCESS_KEY_ID:YOUR_SIGNATURE_HEREHTTP/1.1 200 OK Date: Wed, 01 Mar 2006 12:00:00 GMT Connection: close Server: AmazonS3 <?xml version="1.0" encoding="UTF-8"?> <BucketLoggingStatus xmlns="http://doc.s3.amazonaws.com/2006-03-01"> <LoggingEnabled> <TargetBucket>mybucketlogs</TargetBucket> <TargetPrefix>mybucket-access_log-/</TargetPrefix> <TargetGrants> <Grant> <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="AmazonCustomerByEmail"> <EmailAddress>[email protected]</EmailAddress> </Grantee> <Permission>READ</Permission> </Grant> </TargetGrants> </LoggingEnabled> </BucketLoggingStatus>
In SOAP, you can work with BucketLoggingStatus resource using the SOAPSetBucketLoggingStatus and SOAPGetBucketLoggingStatus operations.
Amazon S3 checks the validity of the proposed
BucketLoggingStatus when you try to Set or PUT to it.
If the TargetBucket does not exist, is not owned
by you, or does not have the appropriate grants, you will receive the
InvalidTargetBucketForLogging error. If your
proposed BucketLoggingStatus document is not
well-formed XML or does not match our published schema, you will receive
the MalformedXMLError.
![[Important]](important.png)