

# Criação de grupo da Lente de Armazenamento
<a name="storage-lens-groups-create"></a>

Os exemplos a seguir demonstram como criar um grupo da Lente de Armazenamento do Amazon S3 usando o console do Amazon S3AWS Command Line Interface, (AWS CLI) e AWS SDK para Java.

## Usar o console do S3
<a name="create-storage-lens-group-console"></a>

**Para criar um grupo da Lente de Armazenamento**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Na barra de navegação na parte superior da página, escolha o nome da região da AWS exibida no momento. Em seguida, escolha a região para a qual você deseja mudar. 

1. No painel de navegação à esquerda, selecione **Grupos de Lente de Armazenamento**.

1. Selecione **Criar grupo da Lente de Armazenamento**.

1. Em **Geral**, visualize sua **Região de origem** e insira o **Nome do grupo do Storage Lens**.

1. Em **Escopo**, selecione o filtro para aplicar ao seu grupo da Lente de Armazenamento. Para aplicar vários filtros, selecione os filtros e, em seguida, escolha o operador lógico **AND** ou **OR**.
   + Para o filtro **Prefixos**, selecione **Prefixos** e insira uma sequência de prefixo. Para adicionar vários prefixos, selecione **Adicionar prefixo**. Para remover um prefixo, selecione **Remover** ao lado do prefixo para remover.
   + Para o filtro **Tags de objeto**, selecione **Tags de objeto** e insira o par de valores-chave para seu objeto. Selecione **Adicionar tag**. Para remover uma tag, selecione **Remover** ao lado da tag para remover.
   + Para o filtro **Sufixos**, selecione **Sufixos** e insira uma sequência de sufixo. Para adicionar vários sufixos, selecione **Adicionar sufixo**. Para remover um sufixo, selecione **Remover** ao lado do sufixo para remover.
   + Para o filtro **Idade**, especifique a faixa etária do objeto em dias. Selecione **Especificar idade mínima do objeto** e insira a idade mínima do objeto. Em seguida, selecione **Especificar idade máxima do objeto** e insira a idade máxima do objeto.
   + Para o filtro **Tamanho**, especifique a faixa de tamanho do objeto e a unidade de medida. Selecione **Especificar tamanho mínimo do objeto** e insira o tamanho mínimo do objeto. Selecione **Especificar tamanho máximo do objeto** e insira o tamanho máximo do objeto.

1. (Opcional) Para tags de recursos AWS, adicione o par de valores-chave e selecione **Adicionar tag**.

1. Selecione **Criar grupo da Lente de Armazenamento**.

## Como usar o AWS CLI
<a name="create-storage-lens-group-cli"></a>

O comando de exemplo AWS CLI a seguir cria um grupo de Lente de Armazenamento. Para usar esse exemplo de comando, substitua os `{{user input placeholders}}` por suas próprias informações.

```
aws s3control create-storage-lens-group --account-id {{111122223333}} \ 
--region {{us-east-1}} --storage-lens-group=file://./{{marketing-department}}.json
```

O comando de exemplo AWS CLI a seguir cria um grupo da Lente de Armazenamento com duas tags de recursos AWS. Para usar esse exemplo de comando, substitua os `{{user input placeholders}}` por suas próprias informações.

```
aws s3control create-storage-lens-group --account-id {{111122223333}} \ 
--region {{us-east-1}} --storage-lens-group=file://./{{marketing-department}}.json \
--tags Key={{k1}},Value={{v1}} Key={{k2}},Value={{v2}}
```

Para obter configurações de exemplo JSON, consulte [Configuração de grupos da Lente de Armazenamento](storage-lens-groups.md#storage-lens-groups-configuration).

## Usar o AWS SDK para Java
<a name="create-storage-lens-group-sdk-java"></a>

O exemplo AWS SDK para Java a seguir cria um grupo da Lente de Armazenamento Para usar esse exemplo, substitua os `{{user input placeholders}}` por suas próprias informações.

**Example — Crie um grupo da Lente de Armazenamento com um único filtro**  
O exemplo a seguir cria um grupo de Lente de Armazenamento chamado `{{Marketing-Department}}`. Esse grupo tem um filtro de idade do objeto que especifica a faixa etária em `{{30}}` para `{{90}}` dias. Para usar esse exemplo, substitua os `{{user input placeholders}}` por suas próprias informações.  

```
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();
        }
    }
}
```

**Example — Crie um grupo da Lente de Armazenamento com um operador `AND` que inclua vários filtros**  
O exemplo a seguir cria um grupo de Lente de Armazenamento chamado `{{Marketing-Department}}`. Este grupo utiliza o operador `AND` para indicar que os objetos devem corresponder a **todas** as condições de filtro. Para usar esse exemplo, substitua os `{{user input placeholders}}` por suas próprias informações.   

```
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();
        }
    }
}
```

**Example — Crie um grupo da Lente de Armazenamento com um operador `OR` que inclua vários filtros**  
O exemplo a seguir cria um grupo de Lente de Armazenamento chamado `{{Marketing-Department}}`. Este grupo usa um operador `OR` para aplicar um filtro de prefixo (`{{prefix-1}}`, `{{prefix-2}}`, `{{prefix3/sub-prefix-1}}`) ou um filtro de tamanho de objeto com intervalo de tamanho entre `{{1000}}` bytes e `{{6000}}` bytes. Para usar esse exemplo, substitua os `{{user input placeholders}}` por suas próprias informações.  

```
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();
        }
    }
}
```

**Example – Crie um grupo da Lente de Armazenamento com um único filtro e duas tags de recursos AWS**  
O exemplo a seguir cria um grupo da Lente de Armazenamento chamado `{{Marketing-Department}}`, que tem um filtro de sufixo. Este exemplo também adiciona duas tags de recursos AWS ao grupo da Lente de Armazenamento. Para usar esse exemplo, substitua os `{{user input placeholders}}` por suas próprias informações.  

```
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();
        }
    }
}
```

Para obter configurações de exemplo JSON, consulte [Configuração de grupos da Lente de Armazenamento](storage-lens-groups.md#storage-lens-groups-configuration).