使用 Synthetics 监控 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

使用 Synthetics 监控

您可以使用 Amazon CloudWatch Synthetics 创建 Canary。Canary 是按计划运行的可配置脚本,用于监控端点和 API。Canary 遵循相同的路线并执行与客户相同的操作,这使您能够持续验证您的客户体验,即使您的应用程序中没有任何客户流量也可以。使用 Canary,您可以早于客户先行发现问题。

Canary 是用 Node.js 或 Python 编写的脚本。它们以 Node.js 或 Python 为框架在您的账户中创建 Lambda 函数。Canary 通过 HTTP 和 HTTPS 两种协议工作。

Canary 通过 Puppeteer 或 Selenium Webdriver 提供对无头 Google Chrome 浏览器的编程访问。有关 Puppeteer 的更多信息,请参阅 Puppeteer。有关 Selenium 的更多信息,请参阅 www.selenium.dev/

Canary 检查终端节点的可用性和延迟,并可以存储加载时间数据和 UI 屏幕截图。它们可以监控您的 REST API、URL 和网站内容,并且可以检查来自网络钓鱼、代码注入和跨站脚本的未经授权更改。

您可以运行一次 Canary,也可以定期运行。Canary 的运行频率可达每分钟一次。您可以使用 cron 和 rate 表达式来计划 Canary。

有关在创建和运行 Canary 之前需要考虑的安全问题相关信息,请参阅 Synthetics Canary 的安全注意事项

预设情况下,Canary 会在 CloudWatchSynthetics 命名空间中创建几个 CloudWatch 指标。这些指标使用 CanaryName 作为维度。使用函数库中 executeStep()executeHttpStep() 函数的 Canary 还具有 StepName 维度。有关 Canary 函数库的更多信息,请参阅可用于 Canary 脚本的库函数

CloudWatch Synthetics 与 CloudWatch ServiceLens 很好地集成,其将 CloudWatch 与 Amazon X-Ray 结合使用,以提供服务的端到端视图,帮助您更有效地查明性能瓶颈并确定受影响的用户。使用 CloudWatch Synthetics 创建的 Canary 将显示在 ServiceLens 服务映射中。有关 ServiceLens 的更多信息,请参阅 使用 ServiceLens 监控应用程序的运行状况

CloudWatch Synthetics 目前在所有商业 Amazon 区域和 GovCloud 区域可用。

注意

在亚太地区(大阪)不支持 Amazon PrivateLink。在亚太地区(雅加达),Amazon PrivateLink 和 X-Ray 不受支持。