Comprehensive logging for monitoring and analysis

Enable bucket logging and view the logs for all requests made to the buckets. The access logs contain detailed records of requests, such as the requester’s IP address, the time of the request, the requester's identity, the request type (e.g., PUT, GET), and the size of the data returned.

You can enable bucket logging through the IDrive® e2 web console or use the API client. These logs can be used for auditing and analysis, especially for security, access control, and usage monitoring.

Use cases for Bucket Logging

  • Security auditing: Identify unauthorized access attempts or patterns.
  • Access control: Track who is accessing your data and what actions they are performing.
  • Usage monitoring: Monitor usage statistics for better cost management.
  • Troubleshooting: Help diagnose errors related to access permissions or application errors.

Understanding the bucket log structure

Each log entry includes the following fields:

  1. 1. Bucket Owner ID : Account ID that owns the bucket.
  2. 2. Bucket Name : The name of the e2 bucket that received the request.
  3. 3. Time : The time at which the request was received by the e2 server. This follows the format: [dd/Mon/yyyy:hh:mm:ss ±zzzz].
  4. 4. Remote IP Address : The IP address of the requester (the client that sent the request).
  5. 5. Requester : The account ID or IAM user that made the request. For e2 this will appear as -.
  6. 6. Request ID : A unique identifier for the request.
  7. 7. Operation : The type of operation performed (e.g., GET, PUT, POST, DELETE, LIST).
  8. 8. Key : The key (or path) of the object involved in the request.
  9. 9. Request-URI : The URI of the request, which includes the path of the requested object and the query string if present.
  10. 10. HTTP Status Code : The HTTP status code returned by the S3 server to the client.
  11. 11. Error Code : The error code (if any) associated with the request. If there is no error, this field is -.
  12. 12. Bytes Sent : The number of bytes sent to the client in response to the request. This includes the size of the object returned, as well as any additional data.
  13. 13. Object Size : The size of the object being requested. This is only included for GET and HEAD requests.
  14. 14. Total Time : The number of milliseconds that the request was in flight from the server's perspective. This value is measured from the time that your request is received to the time that the last byte of the response is sent.
  15. 15. Turn-Around Time : The number of milliseconds that server spent processing your request. This value is measured from the time that the last byte of request was received until the time that the first byte of the response was sent.
  16. 16. Referer : The referrer URL (if present).
  17. 17. User-Agent : The user agent string sent by the client making the request. This can provide information about the client's browser or program.
  18. 18. Version ID : If the object is versioned, this field will contain the version ID of the object that was accessed. If versioning is not enabled, this field will be -.
  19. 19. Host Id : The DNS of the e2 endpoint.
  20. 20. Signature Version : The signature version, SigV2 or SigV4, that was used to authenticate the request or a - for unauthenticated requests.
  21. 21. Cipher Suit : The Secure Sockets Layer (SSL) cipher that was negotiated for an HTTPS request or a - for HTTP. For e2, this is set as -.
  22. 22. Authentication Type : The type of request authentication used: AuthHeader for authentication headers, QueryString for query string (presigned URL), or a - for unauthenticated requests.
  23. 23. Host Header : The endpoint used to connect to e2.
  24. 24. TLS version : This is set as "-" for e2.
  25. 25. Access Point ARN : This would be "-" for e2.
  26. 26. aclRequired : This would be logged as "-" for e2.
  27. Note: Keeping logs on the destination bucket indefinitely may incur additional costs as the logs are counted towards the total data usage.