当社のSyntheticモニターは、ウェブサイト、アプリケーション、APIエンドポイント向けのクラッシュテストのダミーと見なすことができます。Syntheticモニターをデプロイすると、最も重要なワークフローを通じてAPIチェックや仮想ブラウザのインスタンスが実行され、重要なエンドポイントがテストされ、結果がNew Relicに報告されます。顧客向けアプリに影響を与えるエラー、障害、または異常が発生した場合、Syntheticモニターはそれらの問題をキャッチし、速やかに警告を発します。
当社のSyntheticモニタリング機能は、社内アプリやファイアウォールの背後でも機能します。プライベートロケーションを設定し、コンテナ化されたアプリケーションを送信して、セキュアなコンテキストでジョブを管理します(つまり、デプロイ対象のSyntheticモニターの種類をデプロイします)。
プロアクティブなモニタリング向けのSyntheticモニター
当社のSyntheticモニターは、単なるpingモニターではありません。Syntheticsは、HTTPヘッダーに至るまで、顧客対応または内部アプリでスクリプト可能なチェックを実行できます。
New RelicでSyntheticモニターを設定すると、次の操作が可能になります。
- ログイン手順、検索、およびその他の重要なビジネストランザクションをテストするリアルなSeleniumを搭載したスクリプト化ブラウザを使用して、ブラウザモニタリングをさらに拡張します。
- APIテストを実行して証明書をチェックするか、あらゆる種類のHTTPリクエストが完了していることを確認します。
- スクリプト化されたAPIモニター用の追加のノードモジュールで、ユースケースの範囲を拡大します。
- 問題がネットワークやAWSの場所、サードパーティリソースの遅さ、バックエンドサービスやインフラストラクチャの健全性に起因するかどうかを簡単に診断します。
Syntheticsクイックスタートでは、コミュニティが提供したSyntheticモニターの例を参照できます。 これらの例はオープンであり、 New Relicではサポートされていませんが、スクリプト化されたAPIとスクリプト化ブラウザモニターの一般的なユースケースをカバーするのに役立つ、貴重なスクリプトとスニペットが含まれています。
最初のSyntheticモニターを作成する前に...
以下は、システム要件の概要、データの保護方法、権限の制御方法について説明しています。
Syntheticsモニターのタイプ
選択したSyntheticモニターのタイプに応じて、以下の操作を実行できます。
- モニターの追加と編集
- APIを使用してモニターを管理します。
- 特定のロケーションから、またはプライベートサーバー用にモニターを設定する
Infrastructureモニタリングでは、host not reporting機能も使用できます。これにより、強化された監視オプションを活用できるほか、ホストからのデータ送信が停止した際に通知を受信することができます。
Syntheticモニターには以下の7つのタイプがあります。
Syntheticモニターのタイプ | 説明 |
---|---|
リンク切れモニター API名: | URLを指定すると、このモニターはページ上のすべてのリンクが成功するかどうかをテストします。障害が検出されると、その障害の原因となった個々の失敗したリンクを表示できます。 |
証明書チェックモニター API名: | 設定可能な閾値に基づいて、ドメイン証明書に対してプロアクティブにpingを実行します。アラートとペアリングして、証明書の更新が必要な場合に通知されるようにします。 |
Pingモニター API名: | Pingモニターは、最もシンプルなタイプのモニターです。アプリケーションがオンラインであるかどうかを単純に確認します。Synthetic pingモニターは、シンプルなJava HTTPクライアントを使用して、サイトにリクエストします。 他のSyntheticモニターのタイプとの一貫性を保つために、ユーザーエージェントは |
ステップモニター API名: | ステップモニターは高度なブラウザベースのモニターで、コードを使用せずに設定できます。 モニターは、次のように設定できます。
|
シンプルブラウザ モニター API名: | シンプルブラウザモニターは、シンプルで事前構築されたスクリプト化ブラウザモニターです。ChromeまたはFirefoxのインスタンスを使用してサイトにリクエストを送信します。 シンプルなpingモニターと比較すると、実際の顧客アクセスをより正確にエミュレートします。 |
スクリプト化ブラウザモニター API名: | スクリプト化ブラウザモニターは、より高度でカスタマイズされたモニタリングに使用されます。Webサイトをナビゲートし、特定のアクションを実行し、特定のリソースがあることを確認するカスタムスクリプトを作成できます。 モニターはChromeやFirefoxを含む複数のブラウザタイプをサポートします。また、さまざまなサードパーティモジュールを使用して、カスタムモニターを構築できます。 |
APIテスト API名: | APIテストは、APIエンドポイントを監視するために使用します。お客様のWebサイトに加えて、アプリケーションサーバーが機能していることを確認できます。New Relicは、 |
UIで直接合成モニターの追加および編集ができます。
スクリプト化されたブラウザによる高度なテスト
Syntheticモニタリングの使用により、ウェブサイトまたはAPIエンドポイントをプロアクティブにモニターできます。これにより、コンテンツが確実に利用できるようになるだけでなく、完全な機能を確実に実現できます。スクリプト化されたブラウザは、どの場所でも常にコンテンツが稼働していることを確認するために、世界中のあらゆる場所から、Seleniumを搭載したリアルなChromeまたはFirefoxのインスタンスをサイトに送信します。
スクリプト化ブラウザは、テスト機能を拡大し、一般的ではないユーザーフローまたはベータテストなどの複雑な手順もテストできます。たとえば、ニュースレターへのサインアップやアイテムのカートへの追加、または簡単なJavaScriptのような言語を使用した重要な情報の検索などをユーザーが実行していることを確認できます。APIエンドポイントに対してスクリプト化テストを実行可能にするAPIモニターで、バックエンドテストも可能です。
追加機能
Syntheticモニタリングには以下の機能が含まれます。
機能 | 説明 |
---|---|
リアルブラウザ | 単純なブラウザとスクリプト化ブラウザモニターの場合、ホストが起動していることを単にチェックするだけではありません。完全に仮想化されたリアルなChromeブラウザまたはFirefoxブラウザ(Selenium搭載)で実際のページコンテンツを読み込み、ユーザーのアクションを正確に反映するテストを行います。 |
詳細な結果表示 | Syntheticモニタリングは13ヶ月間、モニターの実行結果をすべて保存しているため、各チェックおよびすべてのチェックの詳細な内訳を表示できます。Webサイトのパフォーマンスと可用性のスナップショットを入手、また特定の問題を探し当てることが可能です。 |
ブラウザモニタリングによる比較チャート | New Relicの比較チャート機能を使用して、実際のユーザー()のインタラクションとSyntheticモニター間の直接ページロードタイムを比較します。たとえば、ページの停止中に、傾向を対比して、問題が外形監視にも表示されているかどうか、またはその他の変数によって発生しているかどうかを確認できます。 |
デバイスエミュレーション | デバイスエミュレーションを使用して、シンプルブラウザモニター、スクリプト化ブラウザモニター、ステップモニターでモバイルまたはタブレットデバイスをシミュレートします。 |
「3回ストライク」で失敗 | 当社のモニターは、失敗状態に移行する前に3回のチェックを実行します。このマルチストライクシステムは、ノイズの低減に役立ちます。詳細については、3回のストライク動作に関するこのフォーラムの投稿を参照してください。 |
詳細なスクリプト化モニタリング | スクリプト化ブラウザを使用して、ウェブサイトに対する複雑なテストケースを実行します。チェックアウトやログインなどの重要な処理が、常にスムーズに実行されていることを確認し、不具合時に比較できるように、ベースラインの作成ができます。Node.jsをベースにした組み込み型スクリプトIDEにより、ブラウザから離れることなく、素早くスクリプトを作成します。 |
グローバルなテスト範囲 | ユーザーがいつでも、どこからでもウェブサイトにアクセスできるよう、世界中の場所からアクセスできることを確認します。Syntheticモニタリング静的IPアドレスを許可リストに追加することで、ファイアウォールの背後にあるサイトをモニターします。プライベートロケーションを使用すると、内部サイトのモニターや、地理的範囲が新しい場所まで広がります。 |
ポピュラーなアナリティクスプラットフォームとの互換性 | Syntheticモニタリングは、Google Analyticsのようなポピュラーなアナリティクスサービス向けのスクリプトを特に除外します。これにより、毎月Webサイトのモニターチェックが数千に及んでも、アナリティクスツールによって確実に同じデータが受信され続けます。 |
NerdGraph API関数 | 外形監視は、GraphQL APIである NerdGraphに含まれています。 NerdGraphには外形監視のクエリ関数が多数含まれており、外形監視用のNerdgraphドキュメントで確認できます。
|
REST API関数(非推奨) | REST APIは非推奨です。 新しいランタイムはNerdGraphでのみ管理できるため、代わりにNerdGraphを使用することをお勧めします。 REST APIを使用するには、次のドキュメントを参照してください。 |
Terraform | Terraformは、各モニター タイプにリソースを提供し、セキュアな認証情報、プライベートロケーションを提供します。 詳細については、Terraformの概要を参照するか、TerraformレジストリにあるTerraformのドキュメントを確認してください。 |
次のステップ
合成モニターをいくつか設定したら、次の手順を実行することをお勧めします。
- 合成データが集計結果をどのようにメトリクスに変換するかを確認すると、パターンを確認して、パフォーマンス低下の原因を特定できます。
- 各モニターの結果がどのように分類されるかをご覧ください。
- 合成データを実際のユーザーデータで補完したいですか? ウェブサイトのパフォーマンス改善チュートリアルをご覧ください。
- ウェブサイトまたはAPIエンドポイントがアクセス不能になった場合、通知するアラートを作成します。プライベートロケーションを作成することで、地理的範囲の拡大や内部ウェブサイトのモニターもできるようになります。
- さらに詳しく見るために、モニター結果をクエリすることもできます。New Relicは、13ヶ月間モニター結果を保持しているため、使用に関して前年と比較することも可能です。