本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
启用 SDK 指标 AWS SDK for Java
使用 AWS SDK for Java 2.x,您可以收集有关应用程序中服务客户端的指标,分析中的输出Amazon CloudWatch,然后对其采取行动。
默认情况下,SDK 中的指标收集处于禁用状态。本主题帮助您启用和配置它。
先决条件
在启用和使用指标之前,必须完成以下步骤:
-
完成 设置AWS SDK for Java 2.x 中的步骤。
-
将您的项目依赖关系(例如,在您的
pom.xml
或build.gradle
文件中)配置为使用版本2.14.0
或更高版本AWS SDK for Java。要允许将指标发布到CloudWatch,还要在项目的依赖项中加入
cloudwatch-metric-publisher
带有版本号2.14.0
或更高版本号的 ArtifacTid。例如:
<project> <dependencyManagement> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>bom</artifactId> <version>2.14.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>cloudwatch-metric-publisher</artifactId> <version>2.14.0</version> </dependency> </dependencies> </project>
如何启用指标收集
您可以在应用程序中为服务客户端或个人请求启用指标。
为特定请求启用指标
以下代码片段显示了如何允许CloudWatch指标发布者向其发送请求。Amazon DynamoDB它使用默认的指标发布者配置。
MetricPublisher metricsPub = CloudWatchMetricPublisher.create(); DynamoDbClient ddb = DynamoDbClient.create(); ddb.listTables(ListTablesRequest.builder() .overrideConfiguration(c -> c.addMetricPublisher(metricsPub)) .build());
为特定服务客户端启用指标
以下代码片段显示了如何为CloudWatch指标发布者启用服务客户端的默认设置。
MetricPublisher metricsPub = CloudWatchMetricPublisher.create(); DynamoDbClient ddb = DynamoDbClient.builder() .overrideConfiguration(c -> c.addMetricPublisher(metricsPub)) .build();
以下代码段演示了如何为特定服务客户端的指标发布者使用自定义配置。自定义包括加载特定的证书配置文件,指定与服务客户端不同的区域,以及自定义发布者向其发送指标的频率。CloudWatch
MetricPublisher metricsPub = CloudWatchMetricPublisher.builder() .cloudWatchClient(CloudWatchAsyncClient.builder() .region(Region.US_WEST_2) .credentialsProvider(ProfileCredentialsProvider.create("cloudwatch")) .build()) .uploadFrequency(Duration.ofMinutes(5)) .build(); DynamoDbClient ddb = DynamoDbClient.builder() .overrideConfiguration(c -> c.addMetricPublisher(metricsPub)) .build();
收集了哪些信息?
指标收集包括以下内容:
-
API 请求的数量,包括它们是成功还是失败
-
有关您在 API 请求中调用的AWS服务的信息,包括返回的异常
-
编组、签名和 HTTP 请求等各种操作的持续时间
-
HTTP 客户端指标,例如打开的连接数、待处理的请求数以及使用的 HTTP 客户端的名称
注意
可用指标因 HTTP 客户端而异。
如需完整列表,请参阅服务客户端指标。
我该如何使用这些信息?
您可以使用 SDK 收集的指标来监控应用程序中的服务客户端。您可以查看总体使用趋势、识别异常情况、查看返回的服务客户端异常或深入了解特定问题。使用Amazon CloudWatch,您还可以创建警报,以便在应用程序达到您定义的条件时立即通知您。
有关更多信息,请参阅《Amazon CloudWatch用户指南》中的使用Amazon CloudWatch指标和使用Amazon CloudWatch警报。