Application Real-Time Monitoring Service (ARMS) によって監視されているアプリケーションのスレッドプールと接続プールのメトリックを表示するには、スレッドプールと接続プールの監視機能を使用できます。提供されるメトリックには、コア スレッド数、既存スレッド数、許可される最大スレッド数、アクティブ スレッド数、送信済みタスク数、およびタスク キューで許可される最大タスク数が含まれます。
前提条件
ご利用のアプリケーションが ARMS によって監視されていること。詳細については、「概要」をご参照ください。
スレッドプールと接続プールの監視機能は、Application Monitoring Pro Edition のみでサポートされています。
スレッドプールと接続プールの監視を有効にする
V2.7.1.3 より前の ARMS エージェントは、スレッドプールと接続プールの監視をサポートしていません。エージェントのバージョンを 2.7.1.3 以降にアップグレードしてください。詳細については、「ARMS エージェントを更新する」をご参照ください。
デフォルトでは、ARMS エージェント V2.7.3.5 以降では、スレッドプールと接続プールの監視が有効になっています。
ARMS エージェント V2.7.1.3 以降を使用している場合は、次の操作を実行して、スレッドプールと接続プールの監視を手動で有効にします。
[ARMS コンソール] にログインします。左側のナビゲーションウィンドウで、 を選択します。
[アプリケーションリスト] ページで、上部のナビゲーションバーでリージョンを選択し、管理するアプリケーションの名前をクリックします。
説明[言語] 列のアイコンは、アプリケーションのプログラミング言語を示しています。
: Java
: Go
: Python-(ハイフン): Managed Service for OpenTelemetry で監視されているアプリケーション
左側のナビゲーションウィンドウで、[アプリケーション設定] をクリックします。
[カスタム設定] タブをクリックします。[プール監視設定] セクションで、[スレッドプール、接続プールの監視] をオンにします。
メトリックを表示する
スレッドプールと接続プールの監視機能を有効にすると、[アプリケーションの詳細] ページの [スレッドプール監視] タブと [接続プール監視] タブでメトリックを表示できます。
図 1. スレッドプール監視
図 2. 接続プール監視
スレッドプール監視でサポートされているフレームワーク
ARMS エージェント V4.1.x 以降
ARMS エージェント V4.1.x 以降では、次のフレームワークがサポートされています。
java.util.ThreadPoolExecutor: Apache Tomcat 8 ~ 9.1、Apache Dubbo、High-speed Service Framework(HSF)、Vert.x、およびユーザー定義のスレッドプール
org.apache.tomcat.util.threads.ThreadPoolExecutor: Tomcat 9.1 +
org.eclipse.jetty.util.thread.QueuedThreadPool: Jetty
org.xnio.XnioWorker: Undertow
以下のメトリックが収集されます。
メトリック名 | フレームワーク | 説明 |
arms_thread_pool_core_pool_size |
| コア スレッドの数。これは変更されません。 |
arms_thread_pool_max_pool_size |
| スレッドの最大数。これは変更されません。 |
arms_thread_pool_active_thread_count |
| アクティブなスレッドの数、つまり、タスクが実行されているスレッドの数。 |
arms_thread_pool_current_thread_count |
| 現在のスレッド数。アクティブなスレッドの数と、タスクの実行を待機しているスレッドの数が含まれます。 |
arms_thread_pool_max_thread_count |
| スレッドプールの履歴におけるスレッドの最大数。 |
arms_thread_pool_scheduled_task_count |
| スレッドプールでスケジュールされているタスクの数。 |
arms_thread_pool_completed_task_count |
| スレッドプールで実行されたタスクの数。 |
arms_thread_pool_rejected_task_count |
| スレッドプールで拒否されたタスクの数。 |
arms_thread_pool_queue_size |
| スレッドプールのタスク キューのサイズ。 |
ARMS エージェント V4.1.x より前
ARMS エージェント V4.1.x より前は、Apache Tomcat、HSF、Apache Dubbo、Vert.x、および Undertow フレームワークをサポートしています。ARMS エージェントバージョンの中で、V3.1.x 以前は Undertow V1.x および V2.x をサポートしていますが、V3.2.x 以降はすべての Undertow バージョンをサポートしています。
以下のメトリックが収集されます。
メトリックの説明 | メトリック名 |
スレッドプールのコア スレッド数 | arms_threadpool_core_size |
スレッドプールのスレッドの最大数 | arms_threadpool_max_size |
スレッドプールのスレッドのアクティブ数 | arms_threadpool_active_size |
スレッドプール キューサイズ | arms_threadpool_queue_size |
スレッドプールの現在のサイズ | arms_threadpool_current_size |
ARMS エージェント V4.1.x より前は、SchedulerX フレームワークをサポートしています。以下のメトリックが収集されます。
メトリックの説明 | メトリック名 |
スレッドプールのアクティブ スレッド数 | arms_threadpool_active_size |
接続プール監視でサポートされているフレームワーク
ARMS エージェント V4.1.x 以降
ARMS エージェント V4.1.x 以降では、次のフレームワークがサポートされています。DBCP ( > 2.0)、Vibur DBCP ( > 11.0)、c3p0 ( > 0.9.2)、Apache Druid、HikariCP ( > 3.0)、Jedis ( > 3.0)、Lettuce ( > 5.0)、Redisson ( > 3.0)、Tomcat DBCP (>8.0)、および Tomcat JDBC (> 8.0)。
以下のメトリックが収集されます。
メトリック名 | フレームワーク | 説明 |
arms_connection_pool_connection_count | DBCP、c3p0、Vibur DBCP、Druid、HikariCP、Jedis、Lettuce、Redisson、Tomcat DBCP、および Tomcat JDBC | 接続数。接続には、アクティブとアイドルの 2 つの状態があります。 |
arms_connection_pool_connection_min_idle_count | DBCP、Jedis、Druid、HikariCP、Lettuce、Tomcat DBCP、および Tomcat JDBC | アイドル状態の接続の最小数。これは変更されません。 |
arms_connection_pool_connection_max_idle_count | DBCP、Jedis、Druid、Lettuce、Tomcat DBCP、および Tomcat JDBC | アイドル状態の接続の最大数。これは変更されません。 |
arms_connection_pool_connection_max_count | DBCP、Druid、Vibur DBCP、HikariCP、Tomcat DBCP、および Tomcat JDBC | アイドル状態の接続の最大数。これは変更されません。 |
arms_connection_pool_pending_request_count | c3p0、HikariCP、Jedis、Tomcat DBCP、および Tomcat JDBC | ブロックされている接続リクエストの数。 |
ARMS エージェント V4.1.x より前
ARMS エージェント V4.1.x より前は、OkHttp2 および OkHttp3 フレームワークをサポートしています。以下のメトリックが収集されます。
メトリックの説明 | メトリック名 |
接続プールのアクティブな接続数 | arms_threadpool_active_size |
接続プールの現在の接続数 | arms_threadpool_current_size |
ARMS エージェント V4.1.x より前は、Apache HttpClient フレームワークをサポートしています。以下のメトリックが収集されます。
メトリックの説明 | メトリック名 |
接続プールの現在の接続数 | arms_threadpool_current_size |
接続プールの接続の最大数 | arms_threadpool_max_size |
接続プールの待機キューの数 | arms_threadpool_queue_size |
ARMS エージェント V4.1.x より前は、Apache Druid フレームワークをサポートしています。以下のメトリックが収集されます。
メトリックの説明 | メトリック名 |
接続プールのアクティブな接続数 | arms_threadpool_active_size |
接続プールの接続の最大数 | arms_threadpool_max_size |
ARMS エージェント V4.1.x より前は、HikariCP フレームワークをサポートしています。以下のメトリックが収集されます。
メトリックの説明 | メトリック名 |
接続プールのアクティブな接続数 | arms_threadpool_active_size |
接続プールの接続の最大数 | arms_threadpool_max_size |