Jmeter-monitor-test-plan
jMeter-テスト計画の監視
この章では、JMeterを使用してWebサーバーを監視するテスト計画を作成する方法について説明します。 モニターテストの用途は次のとおりです-
- モニターは、ストレステストとシステム管理に役立ちます。
- ストレステストで使用されるモニターは、サーバーのパフォーマンスに関する追加情報を提供します。
- モニターを使用すると、サーバー側のパフォーマンスとクライアント側の応答時間の関係を簡単に確認できます。
- システム管理ツールとして、モニターは1つのコンソールから複数のサーバーを監視する簡単な方法を提供します。
監視にはTomcat 5以上が必要です。 テストの目的で、Tomcat 7.0.42サーバーを監視します。 Java Management Extension(JMX)をサポートするサーブレットコンテナをテストできます。 Tomcatサーバーを監視するテストケースを作成しましょう。 まず、Tomcatサーバーをセットアップしましょう。
Tomcatサーバーのセットアップ
Tomcatサービスステータスを開くことから始めます。 これを行うには、ユーザーの構成ファイル* <TOMCAT_HOME>/conf/tomcat-users.xml*を編集します。 このファイルには、次のようにtomcat-usersセクション(コメント付き)が含まれています-
<tomcat-users>
<!--
<role rolename = "tomcat"/>
<role rolename = "role1"/>
<user username = "tomcat" password = "tomcat" roles = "tomcat"/>
<user username = "both" password = "tomcat" roles = "tomcat,role1"/>
<user username = "role1" password = "tomcat" roles = "role1"/>
-->
</tomcat-users>
このセクションを変更して、adminロール、manager、manager-guiを追加し、ユーザー「admin」を割り当てる必要があります。 改訂されたファイルは次のとおりです-
<tomcat-users>
<role rolename = "manager-gui"/>
<role rolename = "manager-script"/>
<role rolename = "manager-jmx"/>
<role rolename = "manager-status"/>
<user username = "admin" password = "admin" roles = "manager-gui,manager-script,manager-jmx,manager-status"/>
</tomcat-users>
Linuxではtomcatサーバー<TOMCAT_HOME>/bin/startup.shを、Windowsでは<TOMCAT_HOME>/bin/startup.batを起動します。 開始したら、ブラウザに次のリンクを入力して、Tomcatの監視が機能することを確認します-
http://localhost:8080/manager/status?XML=true
認証ウィンドウがブラウザに表示されます。 関連付けられたTomcatログインとパスワードを入力します(この場合はadminです)。 次に、ブラウザは以下のようにTomcatの実行ステータスを表示します-
上記のスクリーンショットから、いくつかの点に注意することができます-
- URLで、XML = true(大文字と小文字の区別に注意)を使用すると、JMeterの機能に必要な監視Tomcatをきれいに表示できます。
- また、デフォルトの2つのコネクタがあることに注意してください。 mod_jk Apache HTTPDフロントモジュールと一般的に使用されるAJPコネクタ、およびポート8080を介してTomcatに直接アクセスするために一般的に使用されるコネクタであるHTTPコネクタ。
JMeterテスト計画を作成する
テスト計画を書くことでTomcatサーバーを監視しましょう-
テスト計画の名前を変更
- /home/manisha/apache-jmeter2.9/bin/jmeter.shをクリックして、JMeterウィンドウを開きます。 * [テスト計画]ノードをクリックします。 * 次の手順の説明に従って、スレッドグループを追加します。
スレッドグループを追加
- *テスト計画→追加→スレッド(ユーザー)→スレッドグループ*を右クリックします。 テスト計画ノードの下にスレッドグループが追加されます。
- 十分なサンプルが生成されるように、ループカウントを永久(または大きな数)に変更します。
HTTP認証マネージャー
- 追加→構成要素→HTTP承認マネージャーを選択して、HTTP承認マネージャーをスレッドグループ要素に追加します。 この要素は、Tomcatサーバーのステータスを確認するためにブラウザーが要求する認証を管理します。
- HTTP認証マネージャーを選択します。
- 次の詳細を編集します-
- ユーザー名-admin(tomcat-users.xmlファイルの構成に依存)
- パスワード-管理者(tomcatusers.xmlファイルの構成に依存)
- 他のフィールドは空のままです。
サンプラーHTTPリクエストの追加
ユーザーを定義したので、今度はユーザーが実行するタスクを定義します。 HTTPリクエスト要素を追加します。
- マウスボタンを右クリックして、[追加]メニューを表示します。
- 追加→サンプラー→HTTP要求を選択します。
- 次に、ツリーでHTTPリクエスト要素を選択します。
- 以下の画像のように、次のプロパティを編集します-
- 次の詳細がこの要素に入力されます-
- 名前-サーバーの状態
- *サーバー名またはIP *-localhost
- ポート-8080
- パス-/manager/status
- パラメータ-「XML」という名前のリクエストパラメータを大文字で追加します。 小文字で「true」の値を指定します。
- オプションのタスク-サンプラーの下部にある「モニターとして使用」をチェックします。
定数タイマーを追加する
サーバーのステータスを定期的に要求するには、各要求間の時間間隔を許可する定数タイマーを追加します。 追加→タイマー→定数タイマーを選択して、このスレッドグループにタイマーを追加します。
[Thread Delay]ボックスに5000ミリ秒を入力します。 一般に、5秒より短い間隔を使用すると、サーバーに負荷がかかる場合があります。 実稼働環境にモニターをデプロイする前に、許容可能な間隔を調べてください。
リスナーを追加
テスト計画に追加する必要がある最後の要素はリスナーです。 2種類のリスナーを追加します。 1つは結果をファイルに保存し、もう1つは結果のグラフィカルビューを表示します。
- スレッドグループ要素を選択します。
- シンプルデータライターリスナーを追加します。追加→リスナー→シンプルデータライター。
- 出力ファイルのディレクトリとファイル名を指定します(この例では/home/manisha/work/sample.csvです)
- テスト計画要素の追加→リスナー→モニター結果を選択して、別のリスナーを追加しましょう。
テスト計画を実行する
ここで、上記のテスト計画を_monitor_test.jmx_として保存します。 [実行]→[開始]オプションを使用して、このテスト計画を実行します。
出力を表示する
結果は/home/manisha/work/sample.csvファイルに保存されます。 下の画像のように、モニター結果リスナーでグラフィカルな結果を確認することもできます。
グラフの両側にキャプションがあることに注意してください。 左側はパーセントで、右側は死んでいる/健康です。 メモリラインが急激に上下する場合は、メモリのスラッシングを示している可能性があります。 このような状況では、アプリケーションをBorland OptimizeItまたはJProbeでプロファイルすることをお勧めします。 見たいのは、負荷、メモリ、スレッドの規則的なパターンです。 不規則な動作は通常、パフォーマンスの低下または何らかのバグを示します。