動的 LDAP 接続プールの監視
動的 LDAP 接続プールは、JNDI LDAP 接続プールの代替であり、ディレクトリごとに個別に有効化できます。このページでは、各ディレクトリのプール統計を監視する方法をご説明します。接続プールとそれを有効にする方法の詳細は、「動的 LDAP 接続プールを設定する」をご参照ください。
動的 LDAP 接続プールは 2 つの方法で監視できます。
REST エンドポイントを使用してライブ統計をすばやく表示する
REST エンドポイントから提供された情報に追加の Java Management Extensions (JMX) メトリックを表示するように監視ツールを設定する
REST API を使用してプールを監視する
REST API は、プールのライブ ステータスをすばやく簡単に表示する方法です。関連する REST エンドポイントについて詳しくは、「Dynamic LDAP pool statistics (動的 LDAP プールの統計)」を参照してください。
JMX インターフェイスを使用してプールを監視する
JMX インターフェイスでは、プールに関する統計がより詳細に得られます。これを使用するには、JMX メトリックにアクセスするための追加のツールを設定する必要があります。この例では、無料の Java Mission Control を使用しています。
JMX とは何か
JMX (Java Management Extensions) は、Java アプリの監視と管理を行うためのテクノロジーです。JMX は MBean (Managed Bean) と呼ばれるオブジェクトを使用して、アプリかそのコンポーネントのデータとリソースを公開します。
Java Mission Control を設定する
始める前に
Java Mission Control には、Java ランタイム環境 (JRE) 11 以降が必要です。
各 Crowd ノードで JMX を有効にする必要があります。
Java Mission Control をインストールして使用するには、次の手順に従います。
Java Mission Control をダウンロードしてインストールします。
Java Mission Control を起動すると、次の画面が表示されます。
- 接続するサーバーを右クリックして、[Start the JMX Console (JMX Console を開始)] を選択します。次の画面が表示されます。
- 下部の [MBean Browser (MBeanブラウザ)] タブを選択します。
- ナビゲーション ツリーで、org.apache.commons.pool 2 ディレクトリを見つけて展開します。動的 LDAP 接続プールを使用する各ディレクトリのエントリが表示されます。
[属性] タブには、選択したディレクトリの JMX メトリックと、プールの状態を説明する追加のパラメータが表示されます。次の表でオプションの詳細を確認できます。
動的 LDAP プールのメトリック
次の表は、各動的 LDAP 接続プールに提供される JMX メトリックを示しています。
各メトリックの説明に記載されているオブジェクトは、プール内の 1 つ以上の接続スロットを表しています。
メトリック | 説明 |
---|---|
BorrowedCount | プールから正常に借用されたオブジェクトの総数。プールの有効期間にわたって測定されます。 |
CreatedCount | プール用に作成されたオブジェクトの総数。プールの有効期間にわたって測定されます。 |
DestroyedByBorrowValidationCount | 借用時の検証が失敗した結果、プールによって破壊されたオブジェクトの総数。プールの有効期間にわたって測定されます。 |
DestroyedByEvictorCount | プールに関連付けられている Evictor によって破壊されたオブジェクトの総数。プールの有効期間にわたって測定されます。 |
DestroyedCount | プールによって破壊されたオブジェクトの総数。プールの有効期間にわたって測定されます。 |
MaxBorrowWaitTimeMillis | スレッドがプールからオブジェクトを借用するために待機していた最大時間。 |
MeanActiveTimeMillis | プール内でオブジェクトがアクティブである平均時間。統計のキャッシュに保存されているすべての値 (最大 100 の値を保存可能) を考慮して計算されます。 |
MeanBorrowWaitTimeMillis | 最近処理されたスレッドがプールからオブジェクトを借用するために待機する必要があった平均時間。統計のキャッシュに保存されているすべての値 (最大 100 の値を保存可能) を考慮して計算されます。 |
MeanIdleTimeMillis | オブジェクトがプール内でアイドル状態だった平均時間。統計のキャッシュに保存されているすべての値 (最大 100 の値を保存可能) を考慮して計算されます。 |