Synthetic テストトンネル

この機能は現在公開ベータ版です。

Synthetic テストトンネルは、内部環境と Datadog インフラストラクチャーの間に短期間の安全な接続を作成し、プライベートアプリケーションで Synthetic テストを迅速にトリガーできるようにします。 Datadog は、CI/CD パイプラインから、または専用の長期的なプロービングシステム (プライベートロケーションなど) をデプロイせずにアプリケーションのローカルバージョンに対して Synthetics テストを起動する場合は、テストトンネルを使用することをお勧めします。テストトンネルは、エフェメラルクラウド環境でのテストのトリガーを検討している場合にも役立ちます。

テストトンネルとは

テストトンネルは、@datadog/datadog-ci NPM パッケージに付属する機能です。これは、CI/CD パイプラインの一部として Synthetic テストを含めるために Datadog が提供する方法の 1 つです。テストトンネルは、インフラストラクチャーと Datadog の間にエンドツーエンドの暗号化された HTTP プロキシを作成します。つまり、CLI を介して送信されたテストリクエストはすべて、datadog-ci クライアントを介して自動的にルーティングされます。これにより、Datadog は内部アプリケーションにアクセスしてテストすることができます。

Synthetic テストトンネル図

datadog-ci はまず、認証のために Datadog から事前に署名された URL を取得します。次に、事前に署名された URL を使用して、Datadog の管理された場所への WebSocket Secure 接続 (wss) を開きます。WebSocket 接続を介した SSH 接続を使用して、テストは datadog-ci によってトリガーされ、Datadog の管理ロケーションを介して実行されます。 DNS 解決はトンネルを介して実行されるため、内部ドメインを使用して、または datadog-ci を実行しているマシンの localhost でアプリケーションをテストできます。

注: テストトンネルを使用する場合、テストのロケーションは、Datadog アカウントのリージョンに依存するロケーションによって上書きされます。

テストトンネルの使用方法

上記のように、テストトンネルは @datadog/datadog-ci NPM パッケージに付属しており、パッケージのバージョン v0.11.0 から入手できます。Datadog CI/CD テストインテグレーションの使用を開始する方法については、Synthetics CI ドキュメントを参照してください。

ローカルマシンまたは CI サーバーにクライアントをセットアップしたら、--tunnel でテストを起動するために使用するコマンドを追加することにより、トンネルでテストを起動することを決定できます。たとえば、グローバルコンフィギュレーションファイルを使用している場合は、次を使用できます。

datadog-ci synthetics run-tests --config <GLOBAL_CONFIG_FILE>.json --tunnel

ファイアウォールの要件

次の Datadog エンドポイントに対してアウトバウンド接続を許可します。

ポートエンドポイント説明
443tunnel-us1.synthetics.datadoghq.comdatadog-ci クライアントからトンネルサービスへの wss 接続を開くために必要です。
443intake.synthetics.datadoghq.com事前に署名された URL を取得し、Synthetic テストをトリガーするために必要です。
443api.datadoghq.comSynthetic テストを検索して取得し、結果をポーリングするために必要です。

ポートエンドポイント説明
443tunnel-eu1.synthetics.datadoghq.comdatadog-ci クライアントからトンネルサービスへの wss 接続を開くために必要です。
443api.datadoghq.eu事前に署名された URL を取得し、Synthetic テストを検索し、取得し、トリガーし、結果をポーリングするために必要です。

: トンネルサービスのトップレベルドメインは .com (.eu ではありません) ですが、エンドポイントは EU (Frankfurt AWS) にあります。

ポートエンドポイント説明
443tunnel-us3.synthetics.datadoghq.comdatadog-ci クライアントからトンネルサービスへの wss 接続を開くために必要です。
443api.us3.datadoghq.com事前に署名された URL を取得し、Synthetic テストを検索し、取得し、トリガーし、結果をポーリングするために必要です。

その他の参考資料