説明
V4.4.2系列では、このビューはV4.4.2 BP4で導入されました。
機能の概要
このビューは、現在のOBServerノード上のOBServerプロセス内のJVMの実行状態とリソース使用状況を表示します。JVMの状態、ヒープメモリ、メタスペース、GC、スレッド数、ファイルディスクリプタ数などの情報が含まれます。各OBServerノードに対応して1行のレコードがあります。
利用時の注意点は以下のとおりです。
- 構成パラメータ
ob_enable_java_envが有効に設定されている場合にのみ、OBServerプロセスはJVMを起動します。無効な場合、STATUSはDISABLEDとなります。 - JVMが起動すると、システムはデフォルトで60秒ごとにJVMの状態を収集します。このビューに表示されるのは、最新の収集結果であり、JVMの起動や収集をトリガーするものではありません。
- まだ正常に収集できていない、または取得できない指標はNULLとして表示され、実際の値が
0の指標と区別されます。 - Java UDFがサンドボックスプロセス内で実行される場合、サンドボックスJVMの状態についてはV$OB_JAVA_SANDBOX_STATUSを参照してください。
フィールドの説明
フィールド名 |
型 |
NULL許容 |
説明 |
|---|---|---|---|
| SVR_IP | varchar(46) | NO | OBServerノードのIPアドレス。 |
| SVR_PORT | bigint(20) | NO | OBServerノードのポート番号。 |
| PROCESS_PID | bigint(20) | YES | OBServerプロセスのプロセスID。 |
| STATUS | varchar(32) | NO | OBServerプロセス内のJVMの状態:
|
| INIT_ATTEMPT_COUNT | bigint(20) | YES | JVMの初期化における累計試行回数。 |
| INIT_FAILURE_COUNT | bigint(20) | YES | JVMの初期化における累計失敗回数。 |
| LAST_INIT_ERROR_CODE | bigint(20) | YES | 最後にJVMの初期化に失敗した際のエラーコード。初期化失敗が発生していない場合はNULL。 |
| LAST_INIT_ERROR_TIME | timestamp(6) | YES | 最後にJVMの初期化に失敗した時刻。初期化失敗が発生していない場合はNULL。 |
| JVM_START_TIME | timestamp(6) | YES | JVMの起動時刻。 |
| JVM_UPTIME_MS | bigint(20) | YES | JVMの稼働時間、単位はミリ秒。 |
| MONITOR_BRIDGE_VERSION | bigint(20) | YES | JVM監視インターフェースのバージョン番号。 |
| HEAP_USED_BYTES | bigint(20) | YES | JVMヒープメモリの使用済みサイズ、単位はバイト。 |
| HEAP_COMMITTED_BYTES | bigint(20) | YES | JVMヒープメモリのコミット済みサイズ、単位はバイト。 |
| HEAP_MAX_BYTES | bigint(20) | YES | JVMヒープメモリの最大利用可能サイズ、単位はバイト。 |
| YOUNG_USED_BYTES | bigint(20) | YES | JVMヤング世代の使用済みサイズ、単位はバイト。 |
| OLD_USED_BYTES | bigint(20) | YES | JVMオールド世代の使用済みサイズ、単位はバイト。 |
| METASPACE_USED_BYTES | bigint(20) | YES | JVMメタスペースの使用済みサイズ、単位はバイト。 |
| METASPACE_COMMITTED_BYTES | bigint(20) | YES | JVMメタスペースのコミット済みサイズ、単位はバイト。 |
| METASPACE_MAX_BYTES | bigint(20) | YES | JVMメタスペースの最大利用可能サイズ、単位はバイト。 |
| CODE_CACHE_USED_BYTES | bigint(20) | YES | JVMコードキャッシュ(Code Cache)の使用サイズ。単位はバイト。 |
| DIRECT_BUFFER_USED_BYTES | bigint(20) | YES | JVMダイレクトバッファ(Direct Buffer)の使用メモリサイズ。単位はバイト。 |
| DIRECT_BUFFER_COUNT | bigint(20) | YES | JVMダイレクトバッファの数。 |
| GC_COUNT | bigint(20) | YES | JVMのGCの累計回数。 |
| GC_TIME_MS | bigint(20) | YES | JVMのGCの累計時間。単位はミリ秒。 |
| YOUNG_GC_COUNT | bigint(20) | YES | JVMでヤング世代のGCを実行した累計回数。 |
| YOUNG_GC_TIME_MS | bigint(20) | YES | JVMでヤング世代のGCを実行した累計時間。単位はミリ秒。 |
| MAJOR_GC_COUNT | bigint(20) | YES | JVMのMajor GC(オールド世代のGC)の累計回数。 |
| MAJOR_GC_TIME_MS | bigint(20) | YES | JVMのMajor GCの累計時間。単位はミリ秒。 |
| THREAD_COUNT | bigint(20) | YES | JVMの現在のスレッド数。 |
| PEAK_THREAD_COUNT | bigint(20) | YES | JVMのピークスレッド数。 |
| OPEN_FD_COUNT | bigint(20) | YES | OBServerプロセスが現在開いているファイルディスクリプタの数。 |
| MAX_FD_COUNT | bigint(20) | YES | OBServerプロセスが開けるファイルディスクリプタの最大数。 |
| COLLECT_ERROR_CODE | bigint(20) | YES | JVMの状態を直近に収集した際のエラーコード。0は収集の成功を示します。 |
| COLLECT_COST_US | bigint(20) | YES | JVMの状態の直近の収集にかかった時間(マイクロ秒)。 |
| LAST_COLLECT_ATTEMPT_TIME | timestamp(6) | YES | JVMの状態の収集を最後に試みた時刻。 |
| SNAPSHOT_TIME | timestamp(6) | YES | 最後に収集が成功した時刻。 |
| SNAPSHOT_AGE_US | bigint(20) | YES | 最後に収集が成功してから経過した時間。単位はマイクロ秒。 |
クエリ例
現在のOBServerノード上のOBServerプロセス内のJVMの状態、ヒープメモリ、GC回数、スレッド数を照会します。
obclient> SELECT SVR_IP, SVR_PORT, STATUS, HEAP_USED_BYTES, HEAP_MAX_BYTES, GC_COUNT, THREAD_COUNT, SNAPSHOT_TIME FROM oceanbase.V$OB_JVM_STATUS;