セレン合成セットアップ

最終更新日: 10 年 2024 月 XNUMX 日

LogicMonitorで実行するようにSeleniumSyntheticsをセットアップするには、LogicMonitorコレクターがアクセスできる場所にSelenium GRIDをインストールしてから、SeleniumGRIDに関する情報でコレクターを更新する必要があります。 これにより、LogicMonitorポータルにSelenium Synthetics Webcheckを追加して、SyntheticsデータをLogicMonitorに取り込むことができます。

一般的な要件

LogicMonitorを使用してSeleniumSyntheticsをセットアップするには、次のものが必要です。

  • セレン GRID 4
    Seleniumを参照してください Seleniumグリッド4 詳細については、ドキュメントを参照してください。
  • LogicMonitor Collector34.100以降

注: Collector は、Selenium GRID にアクセスできる場所にインストールする必要があります。 見る コレクターのインストール.

推奨事項: ブラウザでテストを正常に実行するには、共有メモリ (/dev/shm) の値を最小 2 GB に設定します。

SeleniumGRIDのインストール

Selenium GRIDは、SeleniumSyntheticsチェックを実行できるスマートプロキシサーバーです。 スタンドアロンハブとして、またはテストを並行して実行できるようにノードが小さいハブとして動作できます。 インストール中に、特定のテストに使用するブラウザーまたは環境を指定し、各ノードのサイズを指定できます。 Selenium GRIDは、次の方法を使用してインストールできます。

  • 方法1:SeleniumGRIDをコンテナーにインストールする

注: この方法では、事前構成されたイメージを使用してSelenium GRIDをインストールできます。または、コンテナーにSelenium GRIDを手動でインストールし、インストール中に追加の設定を構成することもできます。

  • 方法2:SeleniumGRIDをローカルにインストールする

方法1:コンテナにSeleniumGRIDをインストールする

Selenium GRID は Docker または Kubernetes にインストールできます。 

プロバイダーから入手可能な次の事前構成されたイメージを使用して、DockerコンテナーにSeleniumGRIDをインストールできます。

Selenium GRID を Kubernetes にインストールする方法の詳細については、次を参照してください。 Kubernetes 上のセレン から。

または、ノードを使用してハブを作成することにより、コンテナーを手動で作成し、SeleniumGRIDをインストールすることもできます。 次の手順例は、DockerコンテナにSeleniumGRIDをインストールする方法を示しています。

  1. 次のコマンドを使用してDockerネットワークを作成します。
$ docker network create grid
  1. 次のコマンドを使用して、Selenium Hub を開始します。
$ docker run -d -p 4442-4444:4442-4444 --net grid --name selenium-hub selenium/hub:latest
  1. 次のコマンドを使用して、環境変数を使用して Chrome ノードを開始します。
$ docker run -d --net grid --name selenium-chrome -e SE_EVENT_BUS_HOST=selenium-hub  -e SE_EVENT_BUS_PUBLISH_PORT=4442 -e SE_EVENT_BUS_SUBSCRIBE_PORT=4443 selenium/node-chrome:4.0.0
  1. 次のコマンドを使用して、エッジ ノードを開始します。
$ docker run -d --net grid --name selenium-edge -e SE_EVENT_BUS_HOST=selenium-hub  -e SE_EVENT_BUS_PUBLISH_PORT=4442 -e SE_EVENT_BUS_SUBSCRIBE_PORT=4443 selenium/node-edge:93.0-edgedriver-93.0-grid-4.0.0

オプションのDocker構成

Dockerを介してSeleniumGridをスタンドアロンとしてセットアップする場合は、次の構成オプションを使用できます。 Dockerコンテナーを起動するときに、これらのオプションを環境変数として構成できます。 のようないくつかの構成オプション SE_NODE_MAX_SESSIONS および SE_NODE_SESSION_TIMEOUT、Dockerコンテナによってデフォルト値が与えられ、特にオーバーライドする必要があります。 他の構成オプションは、を変更することで追加できます。 SE_OPTS 環境変数。これは、デフォルト値を持たない構成オプションのキャッチオールです。

 詳細
セッションリクエストのタイムアウトこの設定は、スタンドアロンDockerコンテナーを起動するときに構成されます。 セッション要求のタイムアウトは、要求がタイムアウトする前に、使用可能なノードをセッションキューで待機する秒数を決定します。 デフォルトは300秒です。 再試行はXNUMX秒ごとに行われます。 セッション要求のタイムアウトがゼロに設定されている場合、要求はキューで無期限に待機します。
ハブおよびSessionQueueの環境変数を介してこれらの値をオーバーライドすることができます(SE_SESSION_REQUEST_TIMEOUT および SE_SESSION_RETRY_INTERVAL)。 たとえば、500秒のタイムアウトは SE_SESSION_REQUEST_TIMEOUT=500 2秒の再試行間隔は SE_SESSION_RETRY_INTERVAL=2.
このオプションは、追加オプションとして–session-request-timeoutをに渡すことで設定できます。 SE_OPTS DockerHubコンテナを起動するときの環境変数。
$ docker run -d -p 4444:4444 -e SE_OPTS='--session-request-timeout 20' selenium/standalone-chrome:4.0
最大セッションこの設定は、スタンドアロンDockerコンテナーを起動するときに構成されます。 最大セッション設定は、リクエストを処理できる利用可能なブラウザセッションの量を決定します。 この設定を使用可能なプロセッサの数より多くに変更すると、リソースが不足しているためにセッションが失敗する可能性があります。 ChromeとEdgeスタンドアロンDockerコンテナの両方で、最大セッション設定にはデフォルト値の1が与えられます。この設定は、オーバーライドすることで設定できます。 SE_NODE_MAX_SESSIONS スタンドアロンDockerコンテナを起動するときの環境変数。$ docker run -d -p 4444:4444 -e SE_NODE_MAX_SESSIONS=4 selenium/standalone-edge:4.0
ノードセッションタイムアウトテスト要求によってセッションスロットが取得された後、この設定は、スロットが解放される前に、アクティビティなしでセッションがアイドル状態を維持できる期間を制御します。 ChromeとEdgeのスタンドアロンDockerコンテナの両方で、ノードセッションのタイムアウト設定にはデフォルト値の300秒が与えられています。 この設定は、オーバーライドすることで設定できます。 SE_NODE_SESSION_TIMEOUT Nodedockerコンテナを起動するときの環境変数。
Selenium SideRunnerはNodeJSに依存しています。 したがって、サイドランナーをインストールする前に、ノード8または10をインストールする必要があります。
$ docker run -d -p 4444:4444 -e SE_NODE_SESSION_TIMEOUT=10 selenium/standalone-edge:4.0

Dockerコンテナーの構成を変更する場合は、コンテナーIDを識別し、次のような開始コマンドを実行して、コンテナーを再起動する必要があります。

#find the container id’s (not running)

$ docker ps -a

CONTAINER ID   IMAGE                                                                         COMMAND                  CREATED       STATUS                       PORTS                                                           NAMES

75bca4385216   selenium/node-edge:93.0-edgedriver-93.0-grid-4.0.0-rc-1-prerelease-20210823   "/opt/bin/entry_poin…"   10 days ago   Exited (255) 6 minutes ago   5900/tcp                                                        selenium-edge

77615a7ada1c   selenium/node-chrome:4.0                                                    "/opt/bin/entry_poin…"   10 days ago   Exited (255) 6 minutes ago   5900/tcp                                                        selenium-chrome

b838fe090610   selenium/hub:4.0                                   "/opt/bin/entry_poin…"   10 days ago   Exited (255) 6 minutes ago   0.0.0.0:4442-4444->4442-4444/tcp, :::4442-4444->4442-4444/tcp   selenium-hub

#start the containers

$ docker start 75bca4385216 77615a7ada1c b838fe090610

75bca4385216

77615a7ada1c

b838fe090610

#now they’re running

$ docker ps

CONTAINER ID   IMAGE                                                                         COMMAND                  CREATED       STATUS          PORTS                                                           NAMES

75bca4385216   selenium/node-edge:93.0-edgedriver-93.0-grid-4.0.0-rc-1-prerelease-20210823   "/opt/bin/entry_poin…"   10 days ago   Up 14 seconds   5900/tcp                                                        selenium-edge

77615a7ada1c   selenium/node-chrome:4.0                                                    "/opt/bin/entry_poin…"   10 days ago   Up 13 seconds   5900/tcp                                                        selenium-chrome

b838fe090610   selenium/hub:4.0 "/opt/bin/entry_poin…"   10 days ago   Up 9 seconds    0.0.0.0:4442-4444->4442-4444/tcp, :::4442-4444->4442-4444/tcp   selenium-hub

方法2:SeleniumGRIDをローカルにインストールする

Selenium GRID(ハブとノードの両方を含む)をスタンドアロンインストールとしてインストールすることも、ハブとノードを個別のインストールとしてインストールすることもできます。

要件

Selenium GRIDをローカルにインストールするには、次のものが必要です。

  • SeleniumServerスタンドアロンパッケージjar
    これには、GRIDの実行に必要なSelenium Hub、WebDriver、およびRCが含まれます。
  • Javaがインストールされ、環境変数に追加されました
  • テストするインストール済みのブラウザ
  • ダウンロードしてPATHに追加されたテストブラウザ用の適切なドライバ

スタンドアロンインストール

Selenium GRIDをスタンドアロンとしてインストールするには、次のコマンドを実行してSeleniumGRIDを起動します。

java -jar selenium-server-<version>.jar standalone

注: このコマンドは、デフォルトでポート4444を使用してスタンドアロンのSeleniumGRIDを起動します。 次のコマンドを使用して、代替ポートを使用できます。 java -jar selenium-server.jar standalone host

Seleniumが起動すると、GRIDにアクセスするためのURIが提供されます。 ブラウザでURIに移動して、Seleniumコンソールと使用可能なハブおよびノー​​ドを表示します。

個別インストール

Seleniumサーバーハブをインストールするには、次のコマンドを実行します。

java -jar selenium-server-<version>.jar hub

ハブに関連付けられたノードを開始するには、次のコマンドを実行します。

java -jar selenium-server-<version>.jar node --hub http://<hub-ip>:<port number>

注: hup-ip は Selenium サーバー ハブ (通常は localhost) の IP であり、セットアップ中に別途指定しない限り、ポート番号はデフォルトで 4444 です。

Synthetics用のLogicMonitorコレクターの更新

LogicMonitorコレクターは agent.conf 構成ファイルとセットアップで割り当てられたプロパティ。 コレクターがSeleniumSyntheticsチェックを実行するには、コレクターがグリッドにアクセスできるURLをプロパティとして指定してから、LogicMonitorポータルでSelenium SyntheticsWebチェックを割り当てることができるようにする必要があります。

  1. でSeleniumGRIDにアクセスできるコレクターに移動します 設定 > コレクターを選択し、 管理  のアイコンをクリックします。
  2. ノーザンダイバー社の サポート ドロップダウンメニューで、「コレクター構成」を選択します。
  1. トグル agent.confを手動で編集します 切り替えて、Selenium GRIDURLをに追加します synthetics.selenium.environment.grid.url プロパティ。
  1. クリック 保存して再起動します.

Collectorは、Selenium SyntheticsWebcheckが割り当てられた状態で再起動します。

SIDEファイルのダウンロード

Synthetics Web チェックに使用される SIDE ファイルをダウンロードできます。

  1. LogicMonitorで、次の場所に移動します リソース > 合成リソースを選択します。
  2. 選択 (リソースオプションの管理) その他のオプションアイコン
  3. 選択 サイドファイルをダウンロード
記事上で