Node.js と Puppeteer を使用するランタイムバージョン - Amazon CloudWatch

Node.js と Puppeteer を使用するランタイムバージョン

Node.js と Puppeteer の最初のランタイムバージョンには、syn-1.0 という名前が付けられました。後のランタイムバージョンには、命名規則 syn-language-majorversion.minorversion があります。syn-nodejs-puppeteer-3.0 以降の命名規則は syn-language-framework-majorversion.minorversion です

追加の -beta サフィックスは、ランタイムバージョンが現在ベータプレビューリリースであることを示しています。

同じメジャーバージョン番号を持つランタイムバージョンには下位互換性があります。

重要

次の CloudWatch Synthetics ランタイムバージョンは 2024 年 3 月 8 日に廃止される予定です。

  • syn-nodejs-puppeteer-6.1

  • syn-nodejs-puppeteer-6.0

  • syn-nodejs-puppeteer-5.1

  • syn-nodejs-puppeteer-5.0

  • syn-nodejs-puppeteer-4.0

詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

重要

重要: 付属する AWS SDK for JavaScript v2 の依存関係は削除され、将来のランタイムリリースでは AWS SDK for JavaScript v3 を使用するように更新されます。その場合は、canary コードリファレンスを更新します。または、付属する AWS SDK for JavaScript v2 依存関係をソースコードの zip ファイルに依存関係として追加することで、引き続き参照して使用することもできます。

すべてのランタイムバージョンに関する注意事項

syn-nodejs-puppeteer-3.0 ランタイムバージョンを使用する場合は、Canary スクリプトが Node.js 12.x と互換性があることを確認してください。syn-nodejs ランタイムバージョンの以前のバージョンを使用する場合は、スクリプトが Node.js 10.x と互換性があることを確認してください。

Canary 内の Lambda コードは、最大メモリが 1 GB になるように設定されています。Canary の各実行は、設定されたタイムアウト値が経過するとタイムアウトします。Canary のタイムアウト値を指定しないと、CloudWatch は Canary の更新頻度に基づいてタイムアウト値を選択します。タイムアウト値を設定する場合、Lambda コールドスタートと canary インストルメンテーションの起動にかかる時間を許容するために 15 秒以上にします。

注記

以下の CloudWatch Synthetics ランタイムバージョンは 2024 年 1 月 8 日に廃止されました。これは、2023 年 12 月 4 日に AWS Lambda が Lambda Node.js 14 ランタイムを廃止したためです。

  • syn-nodejs-puppeteer-3.9

  • syn-nodejs-puppeteer-3.8

  • syn-nodejs-puppeteer-3.7

  • syn-nodejs-puppeteer-3.6

  • syn-nodejs-puppeteer-3.5

以下の CloudWatch Synthetics ランタイムバージョンは 2022 年 11 月 13 日に廃止されました。これは、2022 年 11 月 14 日に AWS Lambda が Lambda Node.js 12 ランタイムを廃止したためです。

  • syn-nodejs-puppeteer-3.4

  • syn-nodejs-puppeteer-3.3

  • syn-nodejs-puppeteer-3.2

  • syn-nodejs-puppeteer-3.1

  • syn-nodejs-puppeteer-3.0

詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

syn-nodejs-puppeteer-9.1

syn-nodejs-puppeteer-9.1 は、Node.js および Puppeteer 用の最新の Synthetics ランタイムです。

重要

Lambda Node.js 18 以降のランタイムは AWS SDK for JavaScript V3 を使用しています。以前のランタイムから関数を移行する必要がある場合は、GitHub の「aws-sdk-js-v3 Migration Workshop」の手順に従ってください。AWS SDK for JavaScript バージョン 3 の詳細については、このブログ記事を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 20.x

  • Puppeteer-core バージョン 22.12.1

  • Chromium バージョン 126.0.6478.126

バグ修正 – HAR ファイル内の日付範囲と保留中のリクエストに関連するバグ修正。

syn-nodejs-puppeteer-9.0

米国東部および西部では Lambda ランタイム Node.js 20.x が利用できないため、syn-nodejs-puppeteer-9.0 は AWS GovCloud (米国東部) と AWS GovCloud (米国西部) では使用できません。

重要

Lambda Node.js 18 以降のランタイムは AWS SDK for JavaScript V3 を使用しています。以前のランタイムから関数を移行する必要がある場合は、GitHub の「aws-sdk-js-v3 Migration Workshop」の手順に従ってください。AWS SDK for JavaScript バージョン 3 の詳細については、このブログ記事を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 20.x

  • Puppeteer-core バージョン 22.12.1

  • Chromium バージョン 126.0.6478.126

バグ修正 — ビジュアルモニタリング機能を有効にするバグ修正を行いました。

syn-nodejs-puppeteer-8.0

警告

バグの影響で、syn-nodejs-puppeteer-8.0 ランタイムは canary でのビジュアルモニタリングをサポートしていません。ビジュアルモニタリングを有効にするには、syn-nodejs-puppeteer-9.0 へのアップグレードを行い、バグを修正します。

米国東部および西部では Lambda ランタイム Node.js 20.x が利用できないため、syn-nodejs-puppeteer-9.0 は AWS GovCloud (米国東部) と AWS GovCloud (米国西部) では使用できません。

重要

Lambda Node.js 18 以降のランタイムは AWS SDK for JavaScript V3 を使用しています。以前のランタイムから関数を移行する必要がある場合は、GitHub の「aws-sdk-js-v3 Migration Workshop」の手順に従ってください。AWS SDK for JavaScript バージョン 3 の詳細については、このブログ記事を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 20.x

  • Puppeteer-core バージョン 22.10.0

  • Chromium バージョン 125.0.6422.112

syn-nodejs-puppeteer-8.0 の新機能:

  • 2 要素認証のサポート

  • 一部のサービスクライアントが Node.js SDK V3 レスポンスでデータを失っていた状況のバグ修正

syn-nodejs-puppeteer-7.0

主な依存関係:

  • Lambda ランタイム Node.js 18.x

  • Puppeteer-core バージョン 21.9.0

  • Chromium バージョン 121.0.6167.139

コードサイズ

このランタイムにパッケージ化できるコードと依存関係のサイズは 80 MB です。

syn-nodejs-puppeteer-7.0 の新機能:

  • Puppeteer と Chromium のバンドルされたライブラリのバージョンを更新 — Puppeteer と Chromium の依存関係が新しいバージョンに更新されました。

    重要

    Puppeteer 19.7.0 から Puppeteer 21.9.0 に移行すると、テストとフィルターに関する重大な変更が導入されます。詳細については、「puppeteer: v20.0.0」および「puppeteer-core: v21.0.0」の「BREAKING CHANGES」セクションを参照してください。

AWS SDK v3 への推奨アップグレード

Lambda nodejs18.x ランタイムは AWS SDK v2 をサポートしていません。AWS SDK v3 に移行することを強くお勧めします。

syn-nodejs-puppeteer-6.2

主な依存関係:

  • Lambda ランタイム Node.js 18.x

  • Puppeteer-core バージョン 19.7.0

  • Chromium バージョン 111.0.5563.146

syn-nodejs-puppeteer-6.2 の新機能:

  • Chromium でバンドルされたライブラリの最新バージョン

  • エフェメラルストレージモニタリング — このランタイムは、カスタマーアカウントにエフェメラルストレージモニタリングを追加します。

  • バグ修正

syn-nodejs-puppeteer-5.2

主な依存関係:

  • Lambda ランタイム Node.js 16.x

  • Puppeteer-core バージョン 19.7.0

  • Chromium バージョン 111.0.5563.146

syn-nodejs-puppeteer-5.2 の新機能:

  • Chromium でバンドルされたライブラリの最新バージョン

  • バグ修正

syn-nodejs-puppeteer-6.1

重要

このランタイムバージョンは 2024 年 3 月 8 日に非推奨となる予定です。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 18.x

  • Puppeteer-core バージョン 19.7.0

  • Chromium バージョン 111.0.5563.146

syn-nodejs-puppeteer-6.1 の新機能:

  • 安定性の向上 - 自動再試行ロジックを追加し、断続的な Puppeteer 起動エラーに対処しました。

  • 依存関係のアップグレード – サードパーティ製の依存関係パッケージを一部アップグレードしました。

  • Amazon S3 へのアクセス権限のない canary — Amazon S3 へのアクセス権限がなくても canary を実行可能といったバグを修正しました。Amazon S3 へのアクセス権限のないこうした canary では、スクリーンショットなどのアーティファクトを Amazon S3 にアップロードできなくなりました。canary のアクセス権限については、「Canary に必要なロールとアクセス許可」で詳しく確認できます。

重要

重要: 付属する AWS SDK for JavaScript v2 の依存関係は削除され、将来のランタイムリリースでは AWS SDK for JavaScript v3 を使用するように更新されます。その場合は、canary コードリファレンスを更新します。または、付属する AWS SDK for JavaScript v2 依存関係をソースコードの zip ファイルに依存関係として追加することで、引き続き参照して使用することもできます。

syn-nodejs-puppeteer-6.0

重要

このランタイムバージョンは 2024 年 3 月 8 日に非推奨となる予定です。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 18.x

  • Puppeteer-core バージョン 19.7.0

  • Chromium バージョン 111.0.5563.146

syn-nodejs-puppeteer-6.0 の新機能:

  • 依存関係のアップグレード – Node.js の依存関係が 18.x にアップグレードされました。

  • インターセプトモードのサポート – Puppeteer の協調インターセプトモードのサポートが、Synthetics Canary ランタイムライブラリに追加されました。

  • トレーシング動作の変更 – fetch と xhr リクエストのみをトレースし、リソースリクエストはトレースしないようにデフォルトの動作を変更しました。リソースリクエストのトレースは、traceResourceRequests オプションを設定することで有効化できます。

  • 期間メトリクスの改良 – 今後 Duration メトリクスでは、Canary でのアーティファクトのアップロード、スクリーンショットの撮影、CloudWatch メトリクスの生成に要する操作時間が除外されます。 Duration メトリクスの値は CloudWatch にレポートされ、Synthetics コンソールで確認することもできます。

  • バグ修正: – Canary の実行中に Chromium がクラッシュした場合に生成されるコアダンプをクリーンアップしました。

重要

重要: 付属する AWS SDK for JavaScript v2 の依存関係は削除され、将来のランタイムリリースでは AWS SDK for JavaScript v3 を使用するように更新されます。その場合は、canary コードリファレンスを更新します。または、付属する AWS SDK for JavaScript v2 依存関係をソースコードの zip ファイルに依存関係として追加することで、引き続き参照して使用することもできます。

syn-nodejs-puppeteer-5.1

重要

このランタイムバージョンは 2024 年 3 月 8 日に非推奨となる予定です。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 16.x

  • Puppeteer-core バージョン 19.7.0

  • Chromium バージョン 111.0.5563.146

syn-nodejs-puppeteer-5.1 のバグ修正:

  • バグ修正 - このランタイムは、canary によって作成された HAR ファイルにリクエストヘッダーが欠落していた syn-nodejs-puppeteer-5.0 のバグを修正するものです。

syn-nodejs-puppeteer-5.0

重要

このランタイムバージョンは 2024 年 3 月 8 日に非推奨となる予定です。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 16.x

  • Puppeteer-core バージョン 19.7.0

  • Chromium バージョン 111.0.5563.146

syn-nodejs-puppeteer-5.0 の新機能:

  • 依存関係のアップグレード — Puppeteer-Core バージョンが 19.7.0 に更新されました。Chromium バージョンは 111.0.5563.146 にアップグレードされました。

重要

新しい Puppeteer-Core バージョンは、以前のバージョンのPuppeteerと完全に下位互換性があるわけではありません。このバージョンの変更の一部により、廃止された Puppeteer 関数を使用する既存の canary が機能しなくなる可能性があります。詳細については、Puppeteer の変更ログにある Puppeteer Core バージョン 19.7.0 から 6.0 の変更ログの重大な変更点をご覧ください。

syn-nodejs-puppeteer-4.0

重要

このランタイムバージョンは 2024 年 3 月 8 日に非推奨となる予定です。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 16.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 92.0.4512

syn-nodejs-puppeteer-4.0 の新機能:

  • 依存関係のアップグレード — Node.js の依存関係が 16.x にアップデートされました。

Node.js と Puppeteer の廃止されたランタイム

Node.js と Puppeteer では、次のランタイムが廃止されました。

syn-nodejs-puppeteer-3.9

重要

このランタイムバージョンは 2024 年 1 月 8 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 14.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 92.0.4512

syn-nodejs-puppeteer-3.9 の新機能:

  • 依存関係のアップグレード – 一部のサードパーティ依存関係パッケージをアップグレードします。

syn-nodejs-puppeteer-3.8

重要

このランタイムバージョンは 2024 年 1 月 8 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 14.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 92.0.4512

syn-nodejs-puppeteer-3.8 の新機能:

  • プロファイルのクリーンアップ — Chromium プロファイルが Canary を実行するたびにクリーンアップされるようになりました。

syn-nodejs-puppeteer-3.8 のバグ修正:

  • バグ修正 — 以前は、ビジュアルモニターリングの Canary がスクリーンショットがない状態で実行すると誤動作することがありました。この問題が修正されました。

syn-nodejs-puppeteer-3.7

重要

このランタイムバージョンは 2024 年 1 月 8 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 14.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 92.0.4512

syn-nodejs-puppeteer-3.7 の新機能:

  • ログ機能の機能強化 — タイムアウトやクラッシュした場合でも、Canary が Amazon S3 にログをアップロードします。

  • Lambda レイヤーのサイズを縮小 — Canary に使用される Lambda レイヤーのサイズが 34% 縮小されます。

syn-nodejs-puppeteer-3.7 のバグ修正:

  • バグ修正 — 日本語、簡体字中国語、繁体字中国語のフォントが正しくレンダリングされます。

syn-nodejs-puppeteer-3.6

重要

このランタイムバージョンは 2024 年 1 月 8 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 14.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 92.0.4512

syn-nodejs-puppeteer-3.6 の新機能:

  • より正確なタイムスタンプ – canary 実行の開始時刻と終了時刻がミリ秒単位まで正確になりました。

syn-nodejs-puppeteer-3.5

重要

このランタイムバージョンは 2024 年 1 月 8 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 14.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 92.0.4512

syn-nodejs-puppeteer-3.5 の新機能:

  • 依存関係の更新 - このランタイムの新機能は、更新された依存関係のみです。

syn-nodejs-puppeteer-3.4

重要

このランタイムバージョンは 2022 年 11 月 13 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 12.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 88.0.4298.0

syn-nodejs-puppeteer-3.4 の新機能:

  • カスタムハンドラー関数 — Canary スクリプトのためにカスタムハンドラー関数を使用できるようになりました。以前のランタイムでは、スクリプトエントリポイントに .handler が含まれている必要がありました。

    Canary スクリプトを任意のフォルダに配置し、ハンドラーの一部としてフォルダ名を渡すこともできます。例えば、MyFolder/MyScriptFile.functionname はエントリポイントとして使用できます。

  • 拡張された HAR ファイル情報 — Canary によって生成された HAR ファイルに、不正なリクエスト、保留中のリクエスト、および不完全なリクエストが表示されるようになりました。

syn-nodejs-puppeteer-3.3

重要

このランタイムバージョンは 2022 年 11 月 13 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 12.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 88.0.4298.0

syn-nodejs-puppeteer-3.3 の新機能:

  • アーティファクト暗号化のその他のオプション– Canary では、Amazon S3 に保存したアーティファクトの暗号化に AWS 管理キーを使用する代わりに、このバージョン以降のランタイムを使用します。使用するキーは、AWS KMS カスタマー管理のキーまたは Amazon S3 が管理するキーから選択できます。詳細については、「Canary アーティファクトの暗号化」を参照してください。

syn-nodejs-puppeteer-3.2

重要

このランタイムバージョンは 2022 年 11 月 13 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 12.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 88.0.4298.0

syn-nodejs-puppeteer-3.2 の新機能:

  • スクリーンショットによるビジュアルモニターリング— これ以降のランタイムを使用する Canary は、実行中に撮影されたスクリーンショットと、同じスクリーンショットのベースラインバージョンを比較できます。スクリーンショットが指定されたパーセンテージのしきい値よりも大きく異なる場合、Canary は失敗します。詳細については、「ビジュアルモニターリング」または「ビジュアルモニターリングの設計図」を参照してください。

  • 機密データに関する新機能 Canary ログやレポートに機密データが表示されないようにすることができます。詳細については、「SyntheticsLogHelper クラス」を参照してください。

  • 廃止される関数 RequestResponseLogHelperクラスは廃止され、他の新しい設定オプションに置き換えられます。詳細については、「RequestResponseLogHelper クラス」を参照してください。

syn-nodejs-puppeteer-3.1

重要

このランタイムバージョンは 2022 年 11 月 13 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 12.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 88.0.4298.0

syn-nodejs-puppeteer-3.1 の新機能:

  • CloudWatch メトリクスの設定機能 – このランタイムでは、不要なメトリクスを無効にできます。それ以外の場合、Canary は Canary 実行ごとにさまざまな CloudWatch メトリクスを発行します。

  • スクリーンショットリンク – ステップの完了後に、スクリーンショットを Canary ステップにリンクできます。これを行うには、スクリーンショットを関連付けるステップの名前を使用して、takeScreenshot メソッドでスクリーンショットを作成します。例えば、ステップを実行し、待機時間を追加して、スクリーンショットを作成できます。

  • ハートビートモニターリングブループリントは複数の URL のモニターリングが可能 – CloudWatch コンソールでハートビートモニターリングブループリントを使用して複数の URL をモニターリングし、Canary 実行レポートのステップの概要で各 URL のステータス、期間、関連付けられたスクリーンショット、失敗の理由を確認できます。

syn-nodejs-puppeteer-3.0

重要

このランタイムバージョンは 2022 年 11 月 13 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 12.x

  • Puppeteer-core バージョン 5.5.0

  • Chromium バージョン 88.0.4298.0

syn-nodejs-puppeteer-3.0 の新機能:

  • アップグレードされた依存関係 – このバージョンは Puppeteer バージョン 5.5.0、Node.js 12.x、および Chromium 88.0.4298.0 を使用します。

  • クロスリージョンバケットアクセス – Canary がログファイル、スクリーンショット、HAR ファイルを保存するバケットとして、別のリージョンの S3 バケットを指定できるようになりました。

  • 新しい関数が利用可能 – このバージョンでは、Canary 名と Syntheticsのランタイムバージョンを取得するためのライブラリ関数を追加します。

    詳細については、「Synthetics クラス」を参照してください。

syn-nodejs-2.2

このセクションでは、syn-nodejs-2.2 ランタイムバージョンについて説明します。

重要

このランタイムバージョンは 2021 年 5 月 28 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 10.x

  • Puppeteer-core バージョン 3.3.0

  • Chromium バージョン 83.0.4103.0

syn-nodejs-2.2 の新機能:

  • HTTP ステップとして Canary をモニターリングする – 単一の Canary で複数の API をテストできるようになりました。各 API は個別の HTTP ステップとしてテストされ、CloudWatch Synthetics はステップメトリクスと CloudWatch Synthetics のステップレポートを使用して各ステップのステータスをモニターリングします。CloudWatch Synthetics では、HTTP ステップごとに SuccessPercent および Duration メトリクスが作成されます。

    この機能は、executeHttpStep(stepName, requestOptions, callback, stepConfig) 関数によって実装されます。詳細については、「executeHttpStep(stepName, requestOptions, [callback], [stepConfig])」を参照してください。

    API Canary ブループリントは、この新しい機能を使用するように更新されました。

  • HTTP リクエストレポート – リクエスト/レスポンスヘッダー、レスポンス本文、ステータスコード、エラーとパフォーマンスのタイミング、TCP 接続時間、TLS ハンドシェイク時間、最初のバイト時間、コンテンツ転送時間などの詳細を取得する HTTP リクエストレポートを表示できるようになりました。HTTP/HTTPS モジュールを内部で使用するすべての HTTP リクエストは、ここで取得されます。ヘッダーとレスポンス本文はデフォルトでは取得されませんが、設定オプションを設定することで有効にできます。

  • グローバルおよびステップレベルの設定 – CloudWatch Synthetics 設定は、Canary のすべてのステップに適用されるグローバルレベルで設定できます。特定のオプションを有効または無効にするために、設定キーと値のペアを渡して、これらの設定をステップレベルで上書きすることもできます。

    詳細については、「SyntheticsConfiguration クラス」を参照してください。

  • ステップ失敗時に続行する設定 – ステップが失敗した場合に、Canary の実行を続行できます。executeHttpStep 関数では、これはデフォルトでオンになっています。このオプションは、グローバルレベルで一度設定することも、ステップごとに個別に設定することもできます。

syn-nodejs-2.1

重要

このランタイムバージョンは 2021 年 5 月 28 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 10.x

  • Puppeteer-core バージョン 3.3.0

  • Chromium バージョン 83.0.4103.0

syn-nodejs-2.1 の新機能:

  • 設定可能なスクリーンショットの動作 – UI Canary によるスクリーンショットのキャプチャをオフにする機能を提供します。以前のバージョンのランタイムを使用する Canary の場合、UI Canary は常に各ステップの前後にスクリーンショットをキャプチャします。syn-nodejs-2.1 の場合、これは設定可能です。スクリーンショットをオフにすると、Amazon S3 のストレージコストが削減され、HIPAA 規制に準拠しやすくなります。詳細については、「SyntheticsConfiguration クラス」を参照してください。

  • Google Chrome 起動パラメータのカスタマイズ Canary が Google Chrome ブラウザウィンドウを起動するときに使用する引数を設定できるようになりました。詳細については、「launch(options)」を参照してください。

以前のバージョンの Canary ランタイムと比べて、syn-nodejs-2.0 以降を使用した場合の Canary の実行時間は少し増えることがあります。

syn-nodejs-2.0

重要

このランタイムバージョンは 2021 年 5 月 28 日に廃止されました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 10.x

  • Puppeteer-core バージョン 3.3.0

  • Chromium バージョン 83.0.4103.0

syn-nodejs-2.0 の新機能:

  • アップグレードされた依存関係 – このランタイムバージョンでは、Puppeteer-core バージョン 3.3.0 と Chromium バージョン 83.0.4103.0 を使用します

  • X-RAY アクティブトレースのサポート。Canary でトレースが有効になっている場合、ブラウザ、AWS SDK、または HTTP または HTTPS モジュールを使用するCanary によって行われたすべての呼び出しに対して Xx-Ray トレースが送信されます。トレースが有効になっている canary は、トレースが有効になっている他のサービスやアプリケーションにリクエストを送信していない場合でも、X-Ray トレースマップに表示されます。詳細については、「Canary と X-Ray のトレース」を参照してください。

  • Synthetics レポート – Canary 実行ごとに、SyntheticsReport-PASSED.json または SyntheticsReport-FAILED.json という名前のレポートが CloudWatch Synthetics により作成され、開始時刻、終了時刻、ステータス、エラーなどのデータが記録されます。また、Canary スクリプトの各ステップの PASSED/FAILED ステータス、および各ステップでキャプチャされたエラーとスクリーンショットも記録されます。

  • リンク切れチェッカーレポート – このランタイムに含まれるリンク切れチェッカーの新しいバージョンでは、チェックされたリンク、ステータスコード、エラーの理由 (ある場合)、およびソースページとターゲットページのスクリーンショットを含むレポートが作成されます。

  • 新しい CloudWatch メトリクス – Synthetics は、2xx4xx5xx、および RequestFailed という名前のメトリクスを CloudWatchSynthetics 名前空間で公開します。これらのメトリクスには、Canary 実行の 200 番台、400 番台、500 番台、およびリクエストのエラー数が示されます。このランタイムバージョンでは、これらのメトリクスは UI Canary に対してのみレポートされ、API Canary に対してはレポートされません。また、ランタイムバージョン syn-nodejs-puppeteeer-2.2 で開始される API Canary についても報告されます。

  • ソート可能な HAR ファイル – ステータスコード、リクエストサイズ、期間によって HAR ファイルをソートできるようになりました。

  • メトリクスのタイムスタンプ – CloudWatch メトリクスは、Canary 実行終了時刻ではなく、Lambda 呼び出し時刻に基づいて報告されるようになりました。

syn-nodejs-2.0 のバグ修正:

  • Canary アーティファクトアップロードエラーが報告されない問題を修正しました。このようなエラーは、実行エラーとして表示されます。

  • リダイレクトされたリクエスト (3xx) が誤ってエラーとして記録される問題を修正しました。

  • スクリーンショットの番号が 0 から始まる問題を修正しました。今後は 1 から始まります。

  • 中国語と日本語のフォントでスクリーンショットが文字化けする問題を修正しました。

以前のバージョンの Canary ランタイムと比べて、syn-nodejs-2.0 以降を使用した場合の Canary の実行時間は少し増えることがあります。

syn-nodejs-2.0-beta

重要

このランタイムバージョンは 2021 年 2 月 8 日に非推奨となりました。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

主な依存関係:

  • Lambda ランタイム Node.js 10.x

  • Puppeteer-core バージョン 3.3.0

  • Chromium バージョン 83.0.4103.0

syn-nodejs-2.0-beta の新機能:

  • アップグレードされた依存関係 – このランタイムバージョンでは、Puppeteer-core バージョン 3.3.0 と Chromium バージョン 83.0.4103.0 を使用します

  • Synthetics レポート – Canary 実行ごとに、SyntheticsReport-PASSED.json または SyntheticsReport-FAILED.json という名前のレポートが CloudWatch Synthetics により作成され、開始時刻、終了時刻、ステータス、エラーなどのデータが記録されます。また、Canary スクリプトの各ステップの PASSED/FAILED ステータス、および各ステップでキャプチャされたエラーとスクリーンショットも記録されます。

  • リンク切れチェッカーレポート – このランタイムに含まれるリンク切れチェッカーの新しいバージョンでは、チェックされたリンク、ステータスコード、エラーの理由 (ある場合)、およびソースページとターゲットページのスクリーンショットを含むレポートが作成されます。

  • 新しい CloudWatch メトリクス – Synthetics は、2xx4xx5xx、および RequestFailed という名前のメトリクスを CloudWatchSynthetics 名前空間で公開します。これらのメトリクスには、Canary 実行の 200 番台、400 番台、500 番台、およびリクエストのエラー数が示されます。これらのメトリクスは UI Canary に対してのみレポートされ、API Canary に対してはレポートされません。

  • ソート可能な HAR ファイル – ステータスコード、リクエストサイズ、期間によって HAR ファイルをソートできるようになりました。

  • メトリクスのタイムスタンプ – CloudWatch メトリクスは、Canary 実行終了時刻ではなく、Lambda 呼び出し時刻に基づいて報告されるようになりました。

syn-nodejs-2.0-beta のバグ修正:

  • Canary アーティファクトアップロードエラーが報告されない問題を修正しました。このようなエラーは、実行エラーとして表示されます。

  • リダイレクトされたリクエスト (3xx) が誤ってエラーとして記録される問題を修正しました。

  • スクリーンショットの番号が 0 から始まる問題を修正しました。今後は 1 から始まります。

  • 中国語と日本語のフォントでスクリーンショットが文字化けする問題を修正しました。

syn-1.0

重要

このランタイムバージョンは 2021 年 5 月 28 日に非推奨となる予定です。詳細については、「CloudWatch Synthetics ランタイムサポートポリシー」を参照してください。

最初の Synthetics ランタイムバージョンは syn-1.0 です。

主な依存関係:

  • Lambda ランタイム Node.js 10.x

  • Puppeteer-core バージョン 1.14.0

  • Puppeteer-core 1.14.0 と一致する Chromium バージョン