Habilitar métricas para o AWS SDK para Java - AWS SDK para Java 1.x

O AWS SDK para Java 1.x entrou no modo de manutenção em 31 de julho de 2024 e o fim do suporte está previsto para 31 de dezembro de 2025. Recomendamos que você migre para o AWS SDK for Java 2.x para continuar recebendo novos recursos, melhorias de disponibilidade e atualizações de segurança.

Habilitar métricas para o AWS SDK para Java

O AWS SDK para Java pode gerar métricas para visualização e monitoramento com o Amazon CloudWatch que avaliam:

  • o desempenho do aplicativo durante o acesso à AWS

  • o desempenho das JVMs quando usadas com a AWS

  • detalhes do ambiente do tempo de execução, como a memória do heap, o número de threads e os descritores de arquivo aberto

Como habilitar a geração de métricas do SDK do Java

Você precisa adicionar a seguinte dependência do Maven para permitir que o SDK envie métricas para o CloudWatch.

<dependencyManagement> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-bom</artifactId> <version>1.12.490*</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-cloudwatchmetrics</artifactId> <scope>provided</scope> </dependency> <!-- Other SDK dependencies. --> </dependencies>

*Substitua o número da versão pela versão mais recente do SDK disponível na central do Maven.

As métricas do AWS SDK para Java são desabilitadas por padrão. Para habilitá-la para o ambiente de desenvolvimento local, inclua uma propriedade de sistema que aponte para o arquivo de credencial de segurança da AWS durante a inicialização da JVM. Por exemplo:

-Dcom.amazonaws.sdk.enableDefaultMetrics=credentialFile=/path/aws.properties

É necessário especificar o caminho para o arquivo de credencial, de forma que o SDK possa fazer upload dos pontos de dados coletados para o CloudWatch para análise posterior.

nota

Se estiver acessando a AWS em uma instância do Amazon EC2 usando o serviço de metadados da instância do Amazon EC2, não será necessário especificar um arquivo de credencial. Neste caso, você precisa especificar somente:

-Dcom.amazonaws.sdk.enableDefaultMetrics

Todas as métricas capturadas pelo AWS SDK para Java estão no namespace AWSSDK/Java e o upload delas é feito para a região padrão do CloudWatch (us-east-1). Para alterar a região, especifique-a usando o atributo cloudwatchRegion na propriedade do sistema. Por exemplo, para definir a região do CloudWatch como us-east-1, use:

-Dcom.amazonaws.sdk.enableDefaultMetrics=credentialFile=/path/aws.properties,cloudwatchRegion={region_api_default}

Assim que você habilitar o recurso, sempre que houver uma solicitação de serviço para a AWS do AWS SDK para Java, os pontos de dados da métrica serão gerados, enfileirados para resumo estatístico e carregados de maneira assíncrona no CloudWatch uma vez a cada minuto. Assim que o upload das métricas for feito, você poderá visualizá-las usando o Console de gerenciamento da AWS e definir alarmes para problemas em potencial, como vazamento de memória, vazamento do descritor de arquivo etc.

Tipos de métrica disponíveis

O conjunto padrão de métricas é dividido em três categorias principais:

AWSMétricas de solicitação do
  • Abrange áreas como a latência da requisição/resposta HTTP, o número de requisições, exceções e novas tentativas.

    RequestMetric 131111
AWS service (Serviço da AWS)Métricas do
  • Inclua dados específicos do AWS service (Serviço da AWS), como o throughput e a contagem de bytes para uploads e downloads do S3.

    ServiceMetric 131111
Métricas de máquina
  • Abrangem o ambiente do tempo de execução, inclusive a memória do heap, o número de threads e os descritores de arquivo aberto.

    MachineMetric 131111

    Se você quiser excluir métricas de máquina, adicione excludeMachineMetrics à propriedade do sistema:

    -Dcom.amazonaws.sdk.enableDefaultMetrics=credentialFile=/path/aws.properties,excludeMachineMetrics

Mais informações