Java 技術には、アプリケーション、オブジェクト、およびデバイスの管理と監視のサポートが含まれます。JVM COBOL は、RunUnit の管理と監視を可能にする管理対象 Bean (MBean) を提供します。
RunUnit MBean は、次のいずれかを対象として有効にできます。
特定の RunUnit レベルに対して RunUnit MBean を有効にする RunUnit クラスの使用方法
RunUnit 上のコンストラクターには、UseManagementBean という新しい値を含む RunUnitStartupOptions 列挙が含まれます。UseManagementBean オプションで RunUnitStartupOptions 列挙を使用する方法は次のとおりです。
RunUnit myRUBean = new RunUnit("MyApplication", RunUnitStartupOptions.UseManagementBean) try { myRUBean.add(new PROGRAM1()); // Where PROGRAM1 is the COBOL program } finally { myRUBean.stopRun(); }
作成するすべての RunUnit の MBean を有効にするための cobconfig.properties テキスト ファイルの使用方法
Oracle の Java Mission Control や JConsole などのさまざまなプログラムを使用して、MBean を表示および使用できます。
JRE のバージョンによっては、MBean を使う前にアプリケーションの動的アタッチを有効にする必要があります。そのためには、Java コマンド ラインから次のコマンドを実行します。
-Dcom.sun.management.jmxremote
MBean は、ライブになっている RunUnit の数を視覚的に表示できる次の 2 つの属性を提供します。
LiveRunUnitCount および LogicalRunUnitCount の値が一致しない場合、次の問題のいずれかが発生している可能性があります。
下図は、Java Mission Control ツールによるリークの表示例を示しています。
MBean 操作 dumpAllLongRunningRunUnitInfo を使用して、一定時間動作している RunUnit を識別できます。この MBean 操作は、ミリ秒単位の時間を指定する long 型パラメーターを使用します。
Oracle の Java Mission Control アプリケーションでは、com.microfocus.runtimeservices の [Operations] タブおよび [MBean Tree] セクションにあります。下図を参照してください。
MBean から返される情報により、名前、ID、開始時間、GUID、および RunUnit を作成した場所のスタック トレースを確認できます。
最も古い RunUnit は常に ID が 1 であり、初期またはデフォルト RunUnit です。
同じ方法で RunUnit を作成および使用する場合、Micro Focus では finally 句で MBean をリリースすることをお勧めします。次に例を示します。
RunUnit myRUBean = new RunUnit("MyApplication", RunUnitStartupOptions.UseManagementBean) try { ... use the myRUBean object } finally { myRUBean.stopRun(); }
詳細については、次を参照してください。