亚马逊AWS官方博客

Amazon CloudWatch 互联网监控器预览版 — 端到端了解应用程序的互联网性能

您有多少次让监控仪表板显示正常情况,同时收到客户罚单,报告您的应用程序 “slow”(缓慢)或不可用? 诊断这些客户报告花了多少时间?

您告诉我们,在监控面向互联网的应用程序时,您面临的挑战之一是在 AWS 之外收集数据,以真实地了解您的应用程序在连接到多个地理位置较远的互联网提供商的客户中的行为。在互联网流量到达您的基础架构之前捕获和监控数据要么困难,要么非常昂贵。

我很高兴地宣布 Amazon CloudWatch Internet Monitor 的公开预览版,这是 CloudWatch 的一项新功能,可以了解互联网问题可能会如何影响应用程序的性能和可用性。这项功能使您可以将诊断互联网问题所需的时间从几天缩短到几分钟。

Internet Monitor 使用我们从全球网络覆盖范围中捕获的连接数据来计算互联网流量的性能和可用性基线。这与我们在 AWS 用来监控自己的互联网正常运行时间和可用性的数据相同。使用 Internet Monitor,您可以了解不同地理位置和网络的最终用户在互联网上遇到的问题。

无需检查您的应用程序代码。您可以启用 AWS 管理控制台CloudWatch 部分中的服务,然后立即开始使用。

让我们看看实际操作
Internet Monitor 入门很容易。假设我想监控我的客户和 AWS 资源之间的网络路径。我打开 AWS 管理控制台并导航至 CloudWatch。我在左侧导航菜单中选择了 Internet Monitor。然后,我选择创建监视器

Internet Monitor - 创建

创建监视器页面上,输入监控器名称,然后选择添加资源以选择要监控的资源。在本演示中,我选择了 VPC 和托管我的面向客户的应用程序的 CloudFront 发行版。

Internet Monitor - 选择资源

我有机会回顾一下我的选择。然后,我选择创建监视器

Internet Monitor - 最终屏幕

从那一刻起,Internet Monitor 开始根据我的应用程序的幕后资源日志收集数据。您无需激活(或付费)VPC 流日志 CloudFront 日志或其他日志类型。

过了一会儿,我收到客户抱怨我们的应用程序运行缓慢。我再次打开 Internet Monitor,选择了之前创建的监视器 (Monitor_example),我立刻发现该应用程序存在互联网性能问题。

运行状况分数图表显示您的全球流量的性能和可用性信息。AWS 拥有关于不同网络提供商和服务在不同地理位置之间网络流量的互联网性能和可用性的大量历史数据。通过对数据进行统计分析,我们可以检测到您的应用程序的性能和可用性与我们计算的估计基线相比何时有所下降。为了便于查看这些下降情况,我们会以估计的性能分数和可用性分数的形式向您报告这些信息。

Internet Monitor - 运行状况分数

我向下滚动页面。互联网流量概览图显示了所有监控位置的整体事件状态。我查看了运行状况事件表中的详细信息。它还重点介绍了全球正在发生的其他事件,按总流量影响排序。我注意到美国内华达州拉斯维加斯的性能问题对我的应用程序流量的影响最大。

Internet Monitor - 互联网流量概述现在我已经发现了问题,我对历史数据感到好奇。以前发生过吗?

我选择 Historical Explorer 选项卡来了解趋势并查看与该位置和网络提供商相关的早期数据。我可以在自定义的时间范围内查看性能得分、可用性得分、传输的字节数和往返时间等汇总指标,例如过去最多 18 个月的自定义时间段的 p50、p90 和 p95 百分位数的往返时间。

Internet Monitor - 我能看到的历史数据今天的事件不是第一起事件。在过去的几个月中,这家特定的客户位置和网络提供商遇到了多个问题。

Internet Monitor - 历史数据详细信息现在我了解了上下文,我想知道我能采取什么措施来缓解这个问题。

我切换到 Traffic insights(流量洞见)选项卡。我看到根据总流量(字节)监控的总体流量数据和主要客户位置。显然,美国内华达州的拉斯维加斯是最大的客户地点之一。

Internet Monitor - Traffic insights(流量洞见) 1

我选择图表是为了查看美国内华达州拉斯维加斯的流量详情。在 Lowest Time To First Byte (TTFB) 列中,我看到了针对所有顶级客户端位置和网络组合的 AWS 服务和 AWS 区域设置建议。表中的第一个字节的预计时间显示了如果我进行建议的架构更改可能会产生的影响。

在此示例中,Internet Monitor 建议让 CloudFront 分配当前由 EC2 分配的流量,并允许除 us-east-2 之外的 us-east-1 中的 EC2 实例提供一些额外的流量。

Internet Monitor - Traffic insights(流量洞见) 2

现已推出
Internet Monitor 现已在 20 个 AWS 区域提供公开预览版:

  • 美国:美国东部(俄亥俄州)、美国东部(弗吉尼亚州北部)、美国西部(北加利福尼亚)、美国西部(俄勒冈州)、加拿大(中部)、南美洲(圣保罗)。
  • 亚太地区:亚太地区(香港)、亚太地区(孟买)、亚太地区(首尔)、亚太地区(新加坡)、亚太地区(悉尼)、亚太地区(东京)。
  • 欧洲、中东和非洲:非洲(开普敦)、欧洲地区(法兰克福)、欧洲地区(爱尔兰)、欧洲地区(伦敦)、欧洲地区(米兰)、欧洲地区(巴黎)、欧洲地区(斯德哥尔摩)、中东(巴林)

请注意,目前缺少 AWS CloudFormation 支持;但将很快添加。

在预览期间,不收取与该服务相关的费用。请记住,Internet Monitor 向 CloudWatch 提供指标和日志;您将为这些额外的 CloudWatch 日志和 CloudWatch 指标收费。

无论您是为初创企业还是大型企业工作,CloudWatch Internet Monitor 都能帮助您主动提高应用程序的性能和可用性。 今天就试一试!

— seb