このドキュメントでは、合成モニターの作成に役立つテンプレートとサンプルコードについて説明します。サンプル関数は Google Cloud/synthetics-sdk-nodjs
GitHub リポジトリで入手できます。
テンプレートに依存せずにテストを作成する場合、Error
がスローされない限り、テストに必ず合格するようにします。Assert
ライブラリを使用して、失敗した場合は、コードの適切な行に必ず戻るようにすることをおすすめします。
汎用テンプレート
汎用テンプレートは、送信 HTTP リクエストのトレースデータとログデータを収集するように構成されています。このソリューションでは、OpenTelemetry auto-instrumentation-node モジュールと winston ロガーを利用します。オープンソース プロダクトに依存しているため、トレースデータとログデータの構造が変更される可能性があります。したがって、収集されたトレースデータとログデータは、デバッグ目的でのみ使用してください。
独自のアプローチを実装して、送信 HTTP リクエストのトレースデータとログデータを収集できます。カスタム アプローチの例については、クラス SyntheticAutoInstrumentation
をご覧ください。
汎用 Node.js のサンプル
generic-synthetic-nodejs
のサンプルは、URL をクエリする方法を示しています。このサンプルには、Google Cloud コンソールに表示されるデフォルトの関数と同じものが含まれています。 サンプル全体を表示するには、more_vert [その他] をクリックして、[GitHub で表示] を選択します。
TypeScript のサンプル
generic-synthetic-typescript
のサンプルは、URL をクエリする方法を示しています。サンプル全体を表示するには、more_vert [その他] をクリックして、[GitHub で表示] を選択します。
Puppeteer テンプレート
Puppeteer を使用する場合は、generic-puppeteer-nodejs
サンプルから始めることを検討してください。
Puppeteer の必須の設定
Puppeteer を使用するには、次の手順を実行してください。
Cloud Run 関数のソース ディレクトリに
.puppeteerrc.cjs
を配置します。Cloud Run 関数の
package.json
ファイルに次のスクリプトを追加します。"scripts": { "gcp-build": "node node_modules/puppeteer/install.mjs" },
Puppeteer のサンプル
generic-puppeteer-nodejs
サンプルは、Cloud Run 関数で Puppeteer を使用する方法を示しています。サンプル全体を表示するには、more_vert [その他] をクリックして、[GitHub で表示] を選択します。
Selenium WebDriver のテンプレート
Selenium WebDriver を使用する場合は、generic-selenium-nodejs
サンプルから始めることを検討してください。GitHub から入手できるサンプルには、index.js
と package.json
のファイルが含まれています。
サンプル全体を表示するには、more_vert [その他] をクリックして、[GitHub で表示] を選択します。
Mocha テンプレート
Mocha テンプレートに依存するテストを作成する場合は、失敗したときに一連のテストを続行するか中止するかを検討します。失敗の後に一連のテストを中止するには、bail
フラグを設定する必要があります。
API のデプロイ、API エンドポイント用のサンプル Mocha テストスイート、合成モニターの構成方法など、エンドツーエンドの例については、Google Cloud 合成モニタリングのチュートリアルのブログをご覧ください。
mocha-url-ok
サンプルは、Cloud Run 関数が Mocha テストスイートを呼び出す方法を示し、サンプル テストスイートを提供します。サンプル全体を表示するには、more_vert [その他] をクリックして、[GitHub で表示] を選択します。
無効なリンクのテンプレート
broken-links-ok
サンプルは、無効なリンクのチェッカーの構成方法を示しています。このテンプレートでは、options
オブジェクトの値のみを指定します。このオブジェクトは、テストする URI とテストのパラメータを指定します。
Puppeteer を使用している場合は、Puppeteer 必須の設定の手順を実行してください。
サンプル全体を表示するには、more_vert [その他] をクリックして、[GitHub で表示] を選択します。