4.3.1 監視できるリソースの種類
リソース枯渇監視機能では,7種類のリソースを監視できます。7種類すべてのリソースを監視することも,必要なリソースだけ監視することもできます。ただし,使用しているOSによっては,監視できないリソースがあります。また,バッチサーバの場合,HTTPリクエスト実行待ちキュー監視およびセッション数監視はできません。
各リソースの詳細について次に説明します。
-
メモリ監視では,JavaVMでのヒープ・メモリ領域を監視します。メモリの使用状況を監視することで,FullGCの予兆を検知できるので,監視結果をヒープサイズおよびメモリサイズのチューニングに利用できます。
設定したしきい値を超えた場合は,KDJE34500-Wが出力されます。
- ポイント
-
この機能で監視しているメモリ使用率が100%に近づいた場合に必ずFullGCが発生するわけではありません。監視した値は,FullGCが発生する可能性が高いという予兆を検知するために使用されます。
-
ファイルディスクリプタ監視では,サーバのプロセス内で開いているファイルディスクリプタを監視します。ファイルディスクリプタの数を監視することで,システムに割り当てられている,サーバのプロセスで使用できるファイルディスクリプタの枯渇を検知したり,見積もりで求めたファイルディスクリプタの数に到達する前に検知したりできます。
設定したしきい値に達した場合は,KDJE34520-Wが出力されます。
なお,ファイルディスクリプタ監視は,Windowsの場合,およびAIXの場合は使用できません。
-
スレッド監視では,サーバのプロセス内で生成するスレッド数を監視します。生成されたスレッド数を監視することで,システムに割り当てられている,サーバのプロセス内で生成できるスレッド数を超えたり,見積もりで求めたスレッド数に到達する前に検知したりできます。
設定したしきい値に達した場合は,KDJE34540-Wが出力されます。
なお,スレッド監視は,Linuxの場合は使用できません。
-
スレッドダンプ監視では,cjdumpsvコマンドやJ2EEアプリケーション実行時間の監視で出力されたスレッドダンプのファイル数を,サーバ単位で監視します。スレッドダンプのファイル数を監視することで,ファイル数が上限に達する前に検知できます。
なお,環境変数JAVACOREDIRを指定している場合,環境変数JAVACOREDIRで指定したディレクトリとデフォルトの出力先ディレクトリ(Windowsの場合:<作業ディレクトリ>\ejb\<サーバ名称>,UNIXの場合:<作業ディレクトリ>/ejb/<サーバ名称>)の両方のスレッドダンプのファイルの個数の合計を監視します。環境変数JAVACOREDIRで指定したパスがディレクトリでないなど,ファイルのリストが取得できない場合は,デフォルトの出力先のファイル数だけを監視します。
設定したしきい値に達した場合は,KDJE34580-Wが出力されます。最大値に達した場合は,KDJE34581-Eが出力されます。
J2EEアプリケーション実行時間の監視については,「5.3 J2EEアプリケーションの実行時間の監視とキャンセル」を参照してください。
- 注意事項
-
スレッドダンプ監視の処理は,環境変数JAVACOREDIRで指定されたディレクトリおよびデフォルトの出力先ディレクトリの,ファイルとディレクトリの数に比例して負荷が掛かります。そのため,それらのディレクトリに不要なファイルを配置しないか,スレッドダンプの監視間隔を長めに設定してください。
-
HTTPリクエスト実行待ちキュー監視では,Webアプリケーション単位の同時実行スレッド数の制御で実行待ちキューにあるリクエストの数を監視します。監視する実行待ちキューは,Webアプリケーションごとの実行待ちキューと,デフォルトの実行待ちキューです。監視は,J2EEサーバ単位,またはWebアプリケーション単位でできます。HTTPリクエストのWebアプリケーション単位およびデフォルトの実行待ちキューを監視することで,リクエストがそれらの実行待ちキューからあふれる前の状態を検知できます。
ただし,Webアプリケーション単位およびデフォルトの実行待ちキューサイズに「0」が指定されている場合は監視しません。
なお,Webアプリケーション単位の実行待ちキューサイズが動的に変更された場合でも,しきい値は最初に設定した値から変更されることはありません。
設定したしきい値に達した場合は,KDJE34621-Wが出力されます。
同時実行スレッド数については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.15 Webアプリケーション単位での同時実行スレッド数の制御」を参照してください。
なお,URLグループ単位の実行待ちキューにあるリクエストの数を監視する場合は,稼働情報収集機能を使用してください。稼働情報収集機能を使用したしきい値の設定方法については,「3.4.1 しきい値を設定できる監視対象」を参照してください。
-
セッション数監視では,Webアプリケーション上で生成されるセッション数を監視します。セッション数を監視することで,セッション数の増加を検知できます。
ただし,セッション数の設定で作成できるセッション数に「0」が指定されている場合は,監視しません。
設定したしきい値に達した場合は,KDJE34640-Wが出力されます。
-
コネクションプール監視では,コネクションプールの使用状態を監視します。コネクションプールの使用状態を監視することで,コネクションの枯渇を事前に検知できるので,コネクションプールのチューニングに利用できます。
ただし,コネクションプールが無効となっている場合は,監視できません。また,コネクションプールの最大値が無制限の場合は,監視はしますが,Managementイベントは通知されません。
設定したしきい値を超えた場合は,KDJE34660-Wが出力されます。最大数に達した場合は,KDJE34661-Wが出力されます。
コネクションプールについては,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.1 コネクションプーリング」を参照してください。