从中发布 SDK 指标 AWS SDK for Java 2.x - AWS SDK for Java 2.x

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

从中发布 SDK 指标 AWS SDK for Java 2.x

借助, AWS SDK for Java 2.x 您可以收集有关应用程序中服务客户端和请求的指标,分析 Amazon CloudWatch Logs 中的输出,然后对其采取行动。

默认情况下,SDK 中的指标收集处于禁用状态。本主题可帮助您启用和配置指标收集。

SDK 指标入门

要在应用程序中启用指标收集,请根据您的用例选择适当的MetricPublisher接口实现,并按照详细的设置说明进行操作:

对于长时间运行的应用程序:

对于 AWS Lambda 函数:

有关故障排除和控制台输出:

快速实现预览

以下是每个用例的启用指标的样子:

长时间运行的应用程序:

MetricPublisher metricsPub = CloudWatchMetricPublisher.create(); DynamoDbClient ddb = DynamoDbClient.builder() .overrideConfiguration(c -> c.addMetricPublisher(metricsPub)) .build();

Lambda 函数:

EmfMetricLoggingPublisher emfPublisher = EmfMetricLoggingPublisher.builder() .namespace("MyApp") .build(); DynamoDbClient dynamoDb = DynamoDbClient.builder() .overrideConfiguration(c -> c.addMetricPublisher(emfPublisher)) .build();

开发和调试:

MetricPublisher loggingPublisher = LoggingMetricPublisher.create(); S3Client s3 = S3Client.builder() .overrideConfiguration(c -> c.addMetricPublisher(loggingPublisher)) .build();

有关完整的实现细节、依赖关系和配置选项,请参阅上面的设置指南。

指标何时可用?

指标通常在 SDK for Java 发出它们后的 5-10 分钟内可用。要获得准确性和 up-to-date指标,请在从 Java 应用程序发出指标至少 10 分钟后查看 Cloudwatch。

收集哪些信息?

指标收集包括以下内容:

  • API 请求的数量,包括请求成功还是失败

  • 有关 AWS 服务 您在 API 请求中调用的信息,包括返回的异常

  • 封送、签名和 HTTP 请求等各种操作的用时

  • HTTP 客户端指标,例如打开的连接数、待处理的请求数以及所使用的 HTTP 客户端的名称

注意

可用指标因 HTTP 客户端而异。

有关完整列表,请参阅服务客户端指标

我该如何使用这些信息?

您可以使用 SDK 收集的指标来监控应用程序中的服务客户端。您可以查看总体使用趋势,识别异常情况,查看返回的服务客户端异常,或者深入了解特定问题。使用 Ama CloudWatch zon Logs,您还可以创建警报,以便在应用程序达到您定义的条件时立即通知您。

有关更多信息,请参阅亚马逊 CloudWatch 日志用户指南中的使用亚马逊 CloudWatch 日志指标和使用亚马逊 CloudWatch 日志警报。

主题