本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Node.js 和 Puppeteer 的运行时版本
Node.js 和 Puppeteer 的第一个运行时版本名为 syn-1.0
。 更高版本的运行时具有命名约定 syn-
。 从 开始language
-majorversion
.minorversion
syn-nodejs-puppeteer-3.0
,命名约定为 syn-
language
-framework
-majorversion
.minorversion
另一个-beta
后缀显示运行时版本当前处于测试版预览版中。
具有相同主版本号的运行时版本将始终向后兼容。
所有运行时版本的说明
使用syn-nodejs-puppeteer-3.0
运行时版本时,请确保您的 Canary 脚本与 Node.js 12.x 兼容。如果您使用syn-nodejs
运行时版本的早期版本,请确保您的脚本与 Node.js 10.x 兼容。
Canary 中的 Lambda 代码已配置为具有最多 1 GB 内存. 在配置的超时值之后,该超时将适用于每个运行的 Canary。如果未为 Canary 指定超时值,CloudWatch 会根据 Canary 的频率来选择超时值。
syn-nodejs-puppeteer-3.0
syn-nodejs-puppeteer-3.0
运行时是最新的运行时版本。
主要依赖项:
-
Lambda 运行时 Node.js 12.x
-
Puppeteer-core 5.5.0 版
-
Chromium 版本 88.0.4298.0
syn-nodejs-puppeteer-3 中的新功能:
-
升级的依赖项— 此版本使用 Puppeteer 版本 5.5.0、Node.js 12.x 和 Chrome 88.0.4298.0。
-
跨区域存储桶访问— 现在,您可以将另一个区域中的 S3 存储桶指定为 Canary 存储其日志文件、屏幕截图和 HAR 文件的存储桶。
-
新函数可用— 此版本添加库函数以检索 Canary 名称和 Synthetics 运行时版本。
有关更多信息,请参阅Synthetics 类.
syn-nodejs-22.2
本部分包含有关syn-nodejs-2.2
运行时版本的信息。
主要依赖项:
-
Lambda 运行时 Node.js 10.x
-
Puppeteer-core 3.3.0 版
-
Chromium 版本 83.0.4103.0
syn-nodejs-2 中的新功能:
-
将 Canary 作为 HTTP 步骤—进行监控 现在,您可以在单个 Canary APIs 中测试多个 。每个 API 作为一个单独的 HTTP 步骤进行测试CloudWatch,Synthetics 使用步骤指标和 CloudWatch Synthetics 步骤报告监控每个步骤的状态。 CloudWatchSynthetics 为每个 HTTP 步骤创建
SuccessPercent
和Duration
指标。此功能由 executeHttpStep(stepName、requestOptions、回调stepConfig、) 函数实现。有关更多信息,请参阅executeHttpStep(stepName、requestOptions、[回调]、[stepConfig]).
API Canary 蓝图已更新为使用此新功能。
-
HTTP 请求报告— 现在,您可以查看详细的 HTTP 请求报告,这些报告捕获详细信息,例如请求/响应标头、响应正文、状态代码、错误和性能计时、TCP 连接时间、TLS 握手时间、第一个字节时间和内容传输时间。此处捕获在后台使用 HTTP/HTTPS 模块的所有 HTTP 请求。默认情况下不会捕获标头和响应正文,但可以通过设置配置选项来启用标头和响应正文。
-
全局和步骤级配置— 您可以在全局级别设置 CloudWatch Synthetics 配置,这些配置将应用于 Canary 的所有步骤。您还可以通过传递配置键/值对来启用或禁用某些选项,在步骤级别覆盖这些配置。
有关更多信息,请参阅SyntheticsConfiguration 类.
-
Continue on step failure configuration (继续执行步骤失败配置—) 您可以选择在步骤失败时继续执行 Canary。对于
executeHttpStep
函数,这是默认开启的。您可以在全局级别设置一次此选项,也可以按不同的步骤设置该选项。
syn-nodejs-22.1
主要依赖项:
-
Lambda 运行时 Node.js 10.x
-
Puppeteer-core 3.3.0 版
-
Chromium 版本 83.0.4103.0
syn-nodejs-2 中的新功能:
-
可配置的屏幕截图行为— 提供禁用 UI Canary 捕获屏幕截图的功能。在使用以前版本的运行时的 Canary 中,UI Canary 始终在每个步骤前后捕获屏幕截图。对于
syn-nodejs-2.1
,这是可配置的。关闭屏幕截图可以降低存储Amazon S3成本,并帮助您遵守 HIPAA 法规。有关更多信息,请参阅SyntheticsConfiguration 类. -
自定义 Google Chrome 启动参数 现在,您可以配置在 Canary 启动 Google Chrome 浏览器窗口时使用的参数。有关更多信息,请参阅launch(选项).
与早期版本的金丝雀版本运行时相比,使用 syn-nodejs-2 或更高版本时,金丝雀版本的持续时间可能会略有增加。
syn-nodejs-2
主要依赖项:
-
Lambda 运行时 Node.js 10.x
-
Puppeteer-core 3.3.0 版
-
Chromium 版本 83.0.4103.0
syn-nodejs-2 中的新功能:
-
升级的依赖项— 此运行时版本使用 Puppeteer-core 版本 3.3.0 和 Chromium 版本 83.0.4103.0
-
支持X-Ray活动跟踪。 如果 Canary 启用了跟踪,则会为使用浏览器X-Ray、开发工具包或 HTTP 或 HTTPS 模块的 Canary 进行的所有调用发送AWS跟踪。具有启用跟踪的 Canary 将显示在 CloudWatch ServiceLens 和 中的服务地图上X-Ray,即使它们没有将请求发送到已启用跟踪的其他服务或应用程序。有关更多信息,请参阅Canary 和 X-Ray 跟踪.
-
Synthetics 报告— 对于每个 Canary 运行CloudWatch,Synthetics 会创建一个名为
SyntheticsReport-PASSED.json
或SyntheticsReport-FAILED.json
的报告,以记录开始时间、结束时间、状态和故障等数据。它还记录 Canary 脚本每个步骤的 PASSED/FAILED 状态,以及为每个步骤捕获的故障和屏幕截图。 -
失败的链接检查程序报告— 此运行时中包含的新版失效链接检查程序将创建一个报告,其中包含已检查的链接、状态代码、失败原因(如果有)以及源和目标页面屏幕截图。
-
新CloudWatch指标— Synthetics 在
2xx
命名空间4xx
中发布名为5xx
、RequestFailed
、 和CloudWatchSynthetics
的指标。这些指标显示 Canary 运行中的 200s、400s、500s和请求失败的数量。对于此运行时版本,仅为 UI Canary 报告这些指标,而不为 API Canary 报告这些指标。对于以运行时版本 开头的 API Canary 也报告它们syn-nodejs-puppeteeer-2.2
。 -
可排序 HAR 文件— 您现在可以按状态代码、请求大小和持续时间对 HAR 文件进行排序。
-
指标时间戳—CloudWatch指标现在根据Lambda调用时间而不是金丝雀运行结束时间来报告。
syn-nodejs-2 中的错误修复:
-
修复了不报告 Canary 构件上传错误的问题。此类错误现在显示为执行错误。
-
修复了将重定向的请求 3xx) 错误记录为错误的问题。
-
修复了屏幕截图编号从 0 开始的问题。它们现在应该以 1 开头。
-
修复了为中文和日语字体添加屏幕截图的问题。
与早期版本的金丝雀版本运行时相比,使用 syn-nodejs-2 或更高版本时,金丝雀版本的持续时间可能会略有增加。
syn-nodejs-20-beta
syn-nodejs-2.0-beta
将于 2021 年 2 月 8 日弃用。有关 CloudWatch Synthetics 运行时支持策略的更多信息,请参阅Canary 运行时支持策略。
主要依赖项:
-
Lambda 运行时 Node.js 10.x
-
Puppeteer-core 3.3.0 版
-
Chromium 版本 83.0.4103.0
syn-nodejs-20-beta 中的新功能:
-
升级的依赖项— 此运行时版本使用 Puppeteer-core 版本 3.3.0 和 Chromium 版本 83.0.4103.0
-
Synthetics 报告— 对于每个 Canary 运行CloudWatch,Synthetics 会创建一个名为
SyntheticsReport-PASSED.json
或SyntheticsReport-FAILED.json
的报告,以记录开始时间、结束时间、状态和故障等数据。它还记录 Canary 脚本每个步骤的 PASSED/FAILED 状态,以及为每个步骤捕获的故障和屏幕截图。 -
失败的链接检查程序报告— 此运行时中包含的新版失效链接检查程序将创建一个报告,其中包含已检查的链接、状态代码、失败原因(如果有)以及源和目标页面屏幕截图。
-
新CloudWatch指标— Synthetics 在
2xx
命名空间4xx
中发布名为5xx
、RequestFailed
、 和CloudWatchSynthetics
的指标。这些指标显示 Canary 运行中的 200s、400s、500s和请求失败的数量。这些指标仅为 UI Canary 报告,而不为 API Canary 报告。 -
可排序 HAR 文件— 您现在可以按状态代码、请求大小和持续时间对 HAR 文件进行排序。
-
指标时间戳—CloudWatch指标现在根据Lambda调用时间而不是 Canary 运行结束时间来报告。
syn-nodejs-20-beta 中的错误修复:
-
修复了不报告 Canary 构件上传错误的问题。此类错误现在显示为执行错误。
-
修复了将重定向的请求 3xx) 错误记录为错误的问题。
-
修复了屏幕截图编号从 0 开始的问题。它们现在应该以 1 开头。
-
修复了为中文和日语字体添加屏幕截图的问题。
syn-10
第一个 Synthetics 运行时版本为 syn-1.0
。
主要依赖项:
-
Lambda 运行时 Node.js 10.x
-
Puppeteer-core 1.14.0 版
-
与 Puppeteer-core 1.14.0 匹配的 Chromium 版本