Storage Lens 그룹 만들기
다음 예제는 Amazon S3 콘솔, AWS Command Line Interface(AWS CLI) 및 AWS SDK for Java를 사용하여 Amazon S3 Storage Lens 그룹을 만드는 방법을 보여줍니다.
Storage Lens 그룹을 만들려면
AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/
에서 Amazon S3 콘솔을 엽니다. -
페이지 상단의 탐색 모음에서 현재 표시된 AWS 리전의 이름을 선택합니다. 그런 다음 전환하려는 리전을 선택합니다.
-
왼쪽 탐색 창에서 스토리지 렌즈 그룹을 선택합니다.
-
Storage Lens 그룹 생성을 선택합니다.
-
일반에서 홈 리전을 확인하고 Storage Lens 그룹 이름을 입력합니다.
-
범위에서 Storage Lens 그룹에 적용하려는 필터를 선택합니다. 여러 필터를 적용하려면 필터를 선택한 다음 AND 또는 OR 논리 연산자를 선택합니다.
-
접두사 필터의 경우 접두사를 선택하고 접두사 문자열을 입력합니다. 여러 접두사를 추가하려면 접두사 추가를 선택합니다. 접두사를 제거하려면 제거할 접두사 옆에 있는 제거를 선택합니다.
-
객체 태그 필터의 경우 객체 태그를 선택하고 객체의 키-값 쌍을 입력합니다. 그런 다음 태그 추가를 선택합니다. 태그를 제거하려면 제거하려는 태그 옆에 있는 제거를 선택합니다.
-
접미사 필터의 경우 접미사를 선택하고 접미사 문자열을 입력합니다. 접미사를 여러 개 추가하려면 접미사 추가를 선택합니다. 접미사를 제거하려면 제거할 지문 옆에 있는 제거를 선택합니다.
-
연령 필터의 경우 객체 연령 범위를 일 단위로 지정합니다. 최소 객체 연령 지정을 선택하고 최소 객체 연령을 입력합니다. 그런 다음 최대 객체 연령 지정을 선택하고 최대 객체 수명을 입력합니다.
-
크기 필터의 경우 객체 크기 범위와 측정 단위를 지정합니다. 최소 객체 크기 지정을 선택하고 최소 객체 크기를 입력합니다. 최대 객체 크기 지정을 선택하고 최대 객체 크기를 입력합니다.
-
-
(선택 사항) AWS 리소스 태그의 경우 키-값 쌍을 추가한 다음 태그 추가를 선택합니다.
-
Storage Lens 그룹 생성을 선택합니다.
다음 예시 AWS CLI 명령은 스토리지 렌즈 그룹을 생성합니다. 이 예 명령을 사용하려면
를 실제 정보로 대체하세요.user input
placeholders
aws s3control create-storage-lens-group --account-id
111122223333
\ --regionus-east-1
--storage-lens-group=file://./marketing-department
.json
다음 예시 AWS CLI 명령은 두 개의 AWS 리소스 태그가 있는 Storage Lens 그룹을 만듭니다. 이 예 명령을 사용하려면
를 실제 정보로 대체하세요.user input placeholders
aws s3control create-storage-lens-group --account-id
111122223333
\ --regionus-east-1
--storage-lens-group=file://./marketing-department
.json \ --tags Key=k1
,Value=v1
Key=k2
,Value=v2
JSON 구성에 대한 예제는 Storage Lens 그룹 구성 섹션을 참조하십시오.
다음 AWS SDK for Java 예제에서는 Storage Lens 그룹을 생성합니다. 이 예제를 사용하려면
를 사용자의 정보로 대체합니다.user input placeholders
예 - 단일 필터를 사용하여 Storage Lens 그룹 만들기
다음 예제에서는
라는 이름의 스토리지 렌즈 그룹을 만듭니다. 이 그룹에는 연령 범위를 Marketing-Department
~30
로 지정하는 객체 연령 필터가 있습니다. 이 예제를 사용하려면 90
를 사용자의 정보로 대체합니다.user input placeholders
package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3control.S3ControlClient; import software.amazon.awssdk.services.s3control.model.CreateStorageLensGroupRequest; import software.amazon.awssdk.services.s3control.model.MatchObjectAge; import software.amazon.awssdk.services.s3control.model.StorageLensGroup; import software.amazon.awssdk.services.s3control.model.StorageLensGroupFilter; public class CreateStorageLensGroupWithObjectAge { public static void main(String[] args) { String storageLensGroupName = "
Marketing-Department
"; String accountId = "111122223333
"; try { StorageLensGroupFilter objectAgeFilter = StorageLensGroupFilter.builder() .matchObjectAge(MatchObjectAge.builder() .daysGreaterThan(30
) .daysLessThan(90
) .build()) .build(); StorageLensGroup storageLensGroup = StorageLensGroup.builder() .name(storageLensGroupName
) .filter(objectAge
Filter) .build(); CreateStorageLensGroupRequest createStorageLensGroupRequest = CreateStorageLensGroupRequest.builder() .storageLensGroup(storageLensGroup
) .accountId(accountId
).build(); S3ControlClient s3ControlClient = S3ControlClient.builder() .region(Region.US_WEST_2
) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); s3ControlClient.createStorageLensGroup(createStorageLensGroupRequest); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }
예 - 여러 필터를 포함하는 AND
연산자를 사용하여 Storage Lens 그룹을 만듭니다.
다음 예제에서는
라는 이름의 스토리지 렌즈 그룹을 만듭니다. 이 그룹은 Marketing-Department
AND
연산자를 사용하여 객체가 모든 필터 조건과 일치해야 함을 나타냅니다. 이 예제를 사용하려면
를 사용자의 정보로 대체합니다.user input placeholders
package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3control.S3ControlClient; import software.amazon.awssdk.services.s3control.model.CreateStorageLensGroupRequest; import software.amazon.awssdk.services.s3control.model.MatchObjectAge; import software.amazon.awssdk.services.s3control.model.MatchObjectSize; import software.amazon.awssdk.services.s3control.model.S3Tag; import software.amazon.awssdk.services.s3control.model.StorageLensGroup; import software.amazon.awssdk.services.s3control.model.StorageLensGroupAndOperator; import software.amazon.awssdk.services.s3control.model.StorageLensGroupFilter; public class CreateStorageLensGroupWithAndFilter { public static void main(String[] args) { String storageLensGroupName = "
Marketing-Department
"; String accountId = "111122223333
"; try { // Create object tags. S3Tag tag1 = S3Tag.builder() .key("object-tag-key-1
") .value("object-tag-value-1
") .build(); S3Tag tag2 = S3Tag.builder() .key("object-tag-key-2
") .value("object-tag-value-2
") .build(); StorageLensGroupAndOperator andOperator = StorageLensGroupAndOperator.builder() .matchAnyPrefix("prefix-1
", "prefix-2
", "prefix-3/sub-prefix-1
") .matchAnySuffix(".png
", ".gif
", ".jpg
") .matchAnyTag(tag1
,tag2
) .matchObjectAge(MatchObjectAge.builder() .daysGreaterThan(30
) .daysLessThan(90
).build()) .matchObjectSize(MatchObjectSize.builder() .bytesGreaterThan(1000L
) .bytesLessThan(6000L
).build()) .build(); StorageLensGroupFilter andFilter = StorageLensGroupFilter.builder() .and(andOperator) .build(); StorageLensGroup storageLensGroup = StorageLensGroup.builder() .name(storageLensGroupName
) .filter(andFilter) .build(); CreateStorageLensGroupRequest createStorageLensGroupRequest = CreateStorageLensGroupRequest.builder() .storageLensGroup(storageLensGroup
) .accountId(accountId
).build(); S3ControlClient s3ControlClient = S3ControlClient.builder() .region(Region.US_WEST_2
) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); s3ControlClient.createStorageLensGroup(createStorageLensGroupRequest); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }
예 - 여러 필터를 포함하는 OR
연산자를 사용하여 Storage Lens 그룹을 만듭니다.
다음 예제에서는
라는 이름의 스토리지 렌즈 그룹을 만듭니다. 이 그룹은 Marketing-Department
OR
연산자를 사용하여 접두사 필터(
,prefix-1
,prefix-2
) 또는 크기 범위가 prefix3/sub-prefix-1
바이트에서 1000
바이트 사이인 객체 크기 필터를 적용합니다. 이 예제를 사용하려면 6000
를 사용자의 정보로 대체합니다.user input placeholders
package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3control.S3ControlClient; import software.amazon.awssdk.services.s3control.model.CreateStorageLensGroupRequest; import software.amazon.awssdk.services.s3control.model.MatchObjectSize; import software.amazon.awssdk.services.s3control.model.StorageLensGroup; import software.amazon.awssdk.services.s3control.model.StorageLensGroupFilter; import software.amazon.awssdk.services.s3control.model.StorageLensGroupOrOperator; public class CreateStorageLensGroupWithOrFilter { public static void main(String[] args) { String storageLensGroupName = "
Marketing-Department
"; String accountId = "111122223333
"; try { StorageLensGroupOrOperator orOperator = StorageLensGroupOrOperator.builder() .matchAnyPrefix("prefix-1
", "prefix-2
", "prefix-3/sub-prefix-1
") .matchObjectSize(MatchObjectSize.builder() .bytesGreaterThan(1000L
) .bytesLessThan(6000L
) .build()) .build(); StorageLensGroupFilter orFilter = StorageLensGroupFilter.builder() .or(orOperator) .build(); StorageLensGroup storageLensGroup = StorageLensGroup.builder() .name(storageLensGroupName
) .filter(orFilter) .build(); CreateStorageLensGroupRequest createStorageLensGroupRequest = CreateStorageLensGroupRequest.builder() .storageLensGroup(storageLensGroup
) .accountId(accountId
).build(); S3ControlClient s3ControlClient = S3ControlClient.builder() .region(Region.US_WEST_2
) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); s3ControlClient.createStorageLensGroup(createStorageLensGroupRequest); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }
예 - 단일 필터와 두 개의 AWS 리소스 태그를 사용하여 Storage Lens 그룹을 만듭니다.
다음 예제에서는 접미사 필터가 있는
라는 이름의 Storage Lens 그룹을 만듭니다. 또한 이 예제는 Storage Lens 그룹에 두 개의 AWS 리소스 태그를 추가합니다. 이 예제를 사용하려면 Marketing-Department
를 사용자의 정보로 대체합니다.user input
placeholders
package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3control.S3ControlClient; import software.amazon.awssdk.services.s3control.model.CreateStorageLensGroupRequest; import software.amazon.awssdk.services.s3control.model.StorageLensGroup; import software.amazon.awssdk.services.s3control.model.StorageLensGroupFilter; import software.amazon.awssdk.services.s3control.model.Tag; public class CreateStorageLensGroupWithResourceTags { public static void main(String[] args) { String storageLensGroupName = "
Marketing-Department
"; String accountId = "111122223333
"; try { // Create AWS resource tags. Tag resourceTag1 = Tag.builder() .key("resource-tag-key-1
") .value("resource-tag-value-1
") .build(); Tag resourceTag2 = Tag.builder() .key("resource-tag-key-2
") .value("resource-tag-value-2
") .build(); StorageLensGroupFilter suffixFilter = StorageLensGroupFilter.builder() .matchAnySuffix(".png
", ".gif
", ".jpg
") .build(); StorageLensGroup storageLensGroup = StorageLensGroup.builder() .name(storageLensGroupName
) .filter(suffixFilter) .build(); CreateStorageLensGroupRequest createStorageLensGroupRequest = CreateStorageLensGroupRequest.builder() .storageLensGroup(storageLensGroup
) .tags(resourceTag1
,resourceTag2
) .accountId(accountId
).build(); S3ControlClient s3ControlClient = S3ControlClient.builder() .region(Region.US_WEST_2
) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); s3ControlClient.createStorageLensGroup(createStorageLensGroupRequest); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }
JSON 구성에 대한 예제는 Storage Lens 그룹 구성 섹션을 참조하십시오.