Tuyên bố sự cố - Sử dụng thư viện boto3 bằng Python để lấy chi tiết ghi nhật ký của một thùng S3. Ví dụ:tìm chi tiết ghi nhật ký của Bucket_1 trong S3.
Phương pháp tiếp cận / Thuật toán để giải quyết vấn đề này
Bước 1 - Nhập các ngoại lệ boto3 và botocore để xử lý các ngoại lệ.
Bước 2 - Sử dụng bucket_name làm tham số trong hàm.
Bước 3 - Tạo phiên AWS bằng thư viện boto3.
Bước 4 - Tạo ứng dụng khách AWS cho S3.
Bước 5 - Bây giờ sử dụng hàm get_bucket_logging và chuyển tên thùng.
Bước 6 - Nó trả về từ điển chứa thông tin chi tiết về S3.
Bước 7 - Xử lý ngoại lệ chung nếu xảy ra sự cố khi xóa tệp
Ví dụ
Sử dụng mã sau để nhận chi tiết ghi nhật ký nhóm -
import boto3 from botocore.exceptions import ClientError def get_bucket_logging_of_s3(bucket_name): session = boto3.session.Session() s3_client = session.client('s3') try: result = s3_client.get_bucket_logging(Bucket=bucket_name,) except ClientError as e: raise Exception( "boto3 client error in get_bucket_logging_of_s3: " + e.__str__()) except Exception as e: raise Exception( "Unexpected error in get_bucket_logging_of_s3 function: " + e.__str__()) return result print(get_bucket_logging_of_s3("Bucket_1"))
Đầu ra
{ 'LoggingEnabled': { 'TargetBucket': 'string', 'TargetGrants': [ { 'Grantee': { 'DisplayName': 'string', 'EmailAddress': 'string', 'ID': 'string', 'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group', 'URI': 'string' }, 'Permission': 'FULL_CONTROL'|'READ'|'WRITE' }, ], 'TargetPrefix': 'string' } }