O AWS SDK para Java 1.x entrou no modo de manutenção em 31 de julho de 2024 e o fim do suporte
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
-
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
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.
-
- 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.
-
- 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.
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
-
Consulte amazonaws/metrics package summary para obter uma lista completa dos tipos de métrica de núcleo predefinidos.
-
Saiba mais sobre como trabalhar com o CloudWatch usando o AWS SDK para Java em Exemplos do CloudWatch usando o AWS SDK para Java.
-
Saiba mais sobre como ajustar o desempenho na publicação Ajustar o AWS SDK para Java para melhorar a resiliência
do blog.