概要

Synthetic Monitoring & Continuous Testing の設定ページ で、次のトピックにアクセスして制御することができます。

デフォルトの設定

強制タグの設定

すべてのテストにおいて使用属性タグを必須にする

[Usage Attribution] ページでは、コストと使用状況の属性を分類するためのタグを最大 3 つまで構成できます。[Enforce tags for usage attribution on all tests] (すべてのテストで使用状況属性のタグを強制する) を選択すると、Synthetic テストの作成または編集時に、構成されたすべての使用状況帰属タグの入力をユーザーに必須にできます。この設定を有効にすると、必要なタグをすべて入力しない限り、ユーザーはテストを保存できません。

すべてのテストに対して必須のモニタータグポリシーを適用する

Synthetic Monitoring およびテスト設定 ページで [Enforce required monitor tag policies on all tests] を選択すると、ユーザー定義のモニタータグポリシーを Synthetic テストに適用することが必須になります。この設定を有効にすると、必要なタグをすべて入力しない限り、ユーザーはテストを保存できません。


  1. Monitors > Settings > Policies ページ でモニタータグを構成します。

構成されたモニターポリシータグを表示する Monitor Settings ページ
  1. Synthetic ブラウザテストを作成し、必要なポリシータグを追加します。

ポリシータグ機能を強調表示した新しい Synthetic テストページ

デフォルトの場所

API テスト、マルチステップ API テスト、または ブラウザテスト の詳細にデフォルトの場所を選択します。

Datadog で管理されるすべての場所と、ご使用のアカウントでセットアップしたプライベートロケーションから選択できます。

場所の選択が完了したら、[Save Default Locations] をクリックします。

デフォルトのブラウザとデバイス

ブラウザテスト の詳細で、デフォルトのブラウザとデバイスの種類を選択します。

ブラウザのオプションには、Google Chrome、Mozilla Firefox、Microsoft Edge があります。デバイスのオプションには、大型ノートパソコン、タブレット、小型モバイルデバイスがあります。

ブラウザとデバイスの選択が完了したら、[Save Default Browsers & Devices] をクリックします。

デフォルトのタグ

API テスト、マルチステップ API テスト、または ブラウザテスト の詳細にデフォルトのタグを選択または追加します。

関連タグの選択が完了したら、[Save Default Tags] をクリックします。

デフォルトタイムアウト

API テスト の詳細に対してデフォルトのタイムアウトを追加します。

新しいタイムアウトの入力が完了したら、[Save Default Timeouts] をクリックします。

デフォルト頻度

API テスト、ブラウザテスト、または モバイルテスト の詳細に対して、デフォルトの頻度を選択または追加します。

関連タグの選択が完了したら、[Save Default Frequencies] をクリックします。

デフォルトリトライ回数

API テスト、ブラウザテスト、または モバイルテスト の詳細に対して、失敗時に再試行するデフォルト回数を選択または追加します。

デフォルトの再試行回数を入力し終えたら、[Save Default Retries] をクリックします。

デフォルトのモバイルデバイス

モバイルテスト の詳細に対して、使用するデフォルトのモバイルデバイスを選択または追加します。

デフォルトのモバイルデバイスを入力し終えたら、[Save Default Devices] をクリックします。

権限

デフォルトでは、Datadog Admin および Datadog 標準のロール を持つユーザーのみが Synthetic Monitoring Default Settings ページにアクセスできます。Default Settings ページにアクセスするには、ユーザーをこれら 2 つの デフォルトロール のいずれかにアップグレードしてください。

カスタムロール機能 を使用している場合は、synthetics_default_settings_read および synthetics_default_settings_write の権限を含むカスタムロールにユーザーを追加します。

ダウンタイム

詳細については、「スケジュールされたダウンタイム」を参照してください。

プライベートロケーション

詳しくは、「プライベートロケーションから Synthetic テストを実行する」をご覧ください。

グローバル変数

グローバル変数は、すべての Synthetic テストからアクセス可能な変数です。これらは、テストスイートのすべての シングル、マルチステップ API テスト、ブラウザテスト、および モバイルアプリテスト で使用できます。

グローバル変数を作成するには、Synthetic Monitoring & Continuous Testing > Settings ページ の [Global Variables] タブに移動し、[+ New Global Variable] をクリックします。

作成する変数のタイプを選択します。

  1. [Variable Name] を入力します。変数名には、大文字の英字、数字、アンダースコアのみを使用できます。この名前は、グローバル変数全体で一意である必要があります。
  2. オプションとして、[Description] を入力し、変数に関連付ける [Tags] を選択します。
  3. 変数に割り当てる Value を入力します。
  4. オプションとして、組み込み関数を使用して変数に値を割り当てることもできます。たとえば、{{ alphabetic(n) }} 組み込み関数をクリックすると、[Value] フィールドにアルファベット値の例が入力されます。
  5. オプションとして、テスト結果上で値を非表示にするため、変数の難読化を有効にできます。
グローバル変数の値の指定

利用可能なビルトインは以下のとおりです。

{{ numeric(n) }}
n 桁の数字列を生成します。
{{ alphabetic(n) }}
n 文字のアルファベット文字列を生成します。

{{ alphanumeric(n) }} n: 文字の英数字文字列を生成します。

{{ date(n unit, format) }}
テスト開始時の UTC 日時を基準に、n 単位を加算または減算した値を、Datadog でサポートされている形式の日付として生成します。
{{ timestamp(n, unit) }}
テスト開始時の UTC タイムスタンプを基準に、n 単位を加算または減算した値を、Datadog でサポートされている単位のタイムスタンプとして生成します。
{{ uuid }}
バージョン 4 の UUID (Universally unique identifier) を生成します。
{{ public-id }}
テストのパブリック ID を挿入します。
{{ result-id }}
テスト実行の結果 ID を挿入します。

既存の HTTP テスト からは、関連するレスポンスヘッダーや本文をパースして変数を作成し、既存の マルチステップ API テスト からは、抽出した変数を使用して作成することができます。

マルチステップ API テストから抽出可能な変数
  1. [Variable Name] を入力します。変数名には、大文字の英字、数字、アンダースコアのみを使用できます。

  2. オプションとして、[Description] を入力し、変数に関連付ける [Tags] を選択します。

  3. 変数の難読化を有効にすると、テスト結果に値が表示されません (オプション)。

  4. 変数を抽出するテストを選択します。

  5. マルチステップ API テストを使用している場合は、テストからローカル変数を抽出します。HTTP テストを使用している場合は、レスポンスヘッダーまたはレスポンスボディから変数を抽出するよう選択します。

    • Response Header から値を抽出: レスポンスのヘッダー全体を変数として使用するか、regex でパースします。
    • Response Body から値を抽出: regex、jsonpath、xpath でレスポンスボディをパースするか、レスポンスボディ全体を使用します。
    • Response Status Code から値を抽出します。

正規表現による値の抽出のほか、正規表現 を使って次のようにパースすることもできます。

  • パターンの最初のインスタンスだけでなく、与えられたパターンのすべてのインスタンスにもマッチする
  • マッチングパターンの大文字と小文字を区別しない
  • 複数行にわたる文字列を対象とする
  • 指定された正規表現パターンを Unicode として扱う
  • ピリオド記号で改行文字にも一致させる
  • 正規表現パターン内の指定されたインデックスからマッチ判定を開始する
  • マッチしたパターンを指定された値に置換する
HTTP テストのレスポンスボディを正規表現でパースする

変数の値は抽出元のテストが実行される度に更新されます。

TOTP を生成してテストで使用するには、シークレットキーを入力する場所にグローバル変数を作成するか、認証プロバイダーからの QR コードをアップロードします。注: 現在、TOTP でサポートされているハッシュアルゴリズムは SHA1 のみです。

  1. [Choose variable type] で、[MFA Token] を選択します。
  2. [Define Variable] に、Variable Name を入力します。変数名には、大文字の英字、数字、アンダースコアのみを使用できます。
  3. オプションとして、[Description] を入力し、変数に関連付ける [Tags] を選択します。
  4. 変数の Secret Key を入力するか、QR コード画像をアップロードします。
  5. [+ Generate] をクリックして OTP を作成します。生成された OTP は Copy アイコンでコピーできます。
MFA トークンを作成する

注: お使いの TOTP トークンが Google Authenticator で動作する場合、Datadog と互換性がある可能性が高いです。 一部の QR コードは特定の検証方法に限定されており、それらはプラットフォーム間で動作しない場合があります。互換性を確保するため、標準の TOTP プロトコルに従う QR コードまたはシークレットを使用してください。

ブラウザテストにおける TOTP ベースの MFA については、「ブラウザテストにおける多要素認証 (MFA) 用 TOTP」を参照してください。

Synthetic テストでパスキーを使用したユーザージャーニーを完了させるには、Virtual Authenticator のグローバル変数を作成します。このグローバル変数は、すべての Synthetic ブラウザテストでパスキーを生成および保存するために使用されます。詳細については、「ブラウザテストでのパスキーの使用」を参照してください。

  1. Synthetic Monitoring & Continuous Testing > Settings の [Global Variables] タブに移動し、[+ New Global Variable] をクリックします。

  2. [Choose variable type] セクションで、[Virtual Authenticator] を選択します。

  3. [Specify variable details] セクションで、[Variable Name] を入力します。変数名には、大文字の英字、数字、アンダースコアのみを使用できます。

  4. オプションとして、[Description] を入力し、変数に関連付ける [Tags] を選択します。これで、パスキーの生成と保存に使用される Virtual Authenticator が Datadog によって作成されます。

  5. [Permissions settings] セクションで、組織内のロールに基づいて変数へのアクセスを制限します。ロールの詳細については、「RBAC のドキュメント」を参照してください。

Virtual Authenticator を作成する

作成されたグローバル変数は、すべての Synthetic テストで使用できます。グローバル変数をテストにインポートするには、[+ Variables] をクリックし、変数を追加するフィールドに {{ と入力し、対象のグローバル変数を選択します。

変数については、HTTP テスト、マルチステップ API テスト、ブラウザテスト、モバイルアプリテスト、ブラウザテストステップのドキュメント をご参照ください。

権限

デフォルトでは、Datadog Admin および Datadog 標準のロール を持つユーザーのみが Synthetic Monitoring Global Variables ページにアクセスできます。Global Variables ページへのアクセス権を取得するには、ユーザーをこれら 2 つの デフォルトロール のいずれかにアップグレードする必要があります。

カスタムロール機能 を使用している場合は、synthetics_default_settings_read および synthetics_default_settings_write の権限を含むカスタムロールにユーザーを追加します。

アクセス制限

ロール、チーム、または個々のユーザーに基づいて、テストへのアクセス権を制限するには きめ細かなアクセス制御 を使用します。

  1. フォームの権限セクションを開きます。
  2. [Edit Access] をクリックします。
    プライベートロケーションの構成フォームからテストの権限を設定する
  3. [Restrict Access] をクリックします。
  4. チーム、ロール、またはユーザーを選択します。
  5. [Add] をクリックします。
  6. それぞれに関連付けたいアクセスレベルを選択します。
  7. [Done] をクリックします。
プライベートロケーションへの Viewer アクセス権がなくても、プライベートロケーションから結果を表示できます。
アクセスレベルGV 値の表示GV メタデータの表示テストでの GV の使用GV 値/メタデータの編集
アクセスなし
Viewer
Editor

注: 変数を制限すると、他のユーザーがその変数をテストに追加して使用することができなくなります。ただし、既存のテストですでに使用されている場合、その変数名が非表示になるわけではありません。

インテグレーション設定

インテグレーション設定ページ

ブラウザテスト用の APM インテグレーション

APM インテグレーションヘッダーの追加を許可する URL を指定します。Datadog の APM インテグレーションヘッダーにより、Datadog はブラウザテストと APM を関連付けることができます。

[Value] フィールドに URL を入力して、APM ヘッダーを送信するエンドポイントを定義します。該当するエンドポイントがトレースおよび許可されていれば、ブラウザテストの結果は対応するトレースに自動的に結び付けられます。

* を使用して、より広範なドメイン名を許可することも可能です。たとえば、https://*.datadoghq.com/* を追加すると、https://datadoghq.com/ 配下のすべてのパスが許可されます。URL の追加が完了したら、[Save APM Integration Settings] をクリックします。

詳しくは、「Synthetics と APM トレースの接続」をご覧ください。

Synthetic ブラウザテストのデータ収集と RUM アプリケーション

Datadog がブラウザテストの実行から RUM データを収集できるようにするには、[Enable Synthetic RUM data collection] をクリックします。無効にすると、ブラウザテストレコーダーで RUM 設定を編集できなくなります。データ収集の有効化が完了したら、[Save RUM Data Collection] をクリックします。

Default Application ドロップダウンメニューから、ブラウザテストデータを収集する RUM アプリケーションを選択します。デフォルトのアプリケーションの指定が完了したら、[Save RUM Data Applications] をクリックします。

詳細については、「RUM を Synthetic Monitoring に接続する」を参照してください。

Synthetic モバイルアプリケーションテストのデータ収集

Datadog は、モバイルアプリケーションのテスト実行から RUM データを収集できるようにするため、RUM iOS SDK または Android SDK を設定し、.ipa または .apk ファイルにパッケージ化します。これにより RUM データが自動的にリンクされ、テスト実行のエンドツーエンドの可観測性が得られます。

参考資料