JConsole のデバッグ出力方法
JConsole では、Java の Logger からデバッグ情報が出力されています。そのため、設定を行えばログ出力が可能になります。
ログ設定
以下に、ログ設定の例を示します。
handlers= java.util.logging.ConsoleHandler .level=INFO java.util.logging.FileHandler.pattern = %h/java%u.log java.util.logging.FileHandler.limit = 50000 java.util.logging.FileHandler.count = 1 java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter java.util.logging.ConsoleHandler.level = FINEST java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter javax.management.level=FINEST javax.management.remote.level=FINER
起動オプション
JConsoleでは、-J オプション以降に jvm に渡す引数を指定できるので、ログ出力を行うためには、JConsole 起動時に、以下のようにログ設定ファイルを指定します。
jconsole -J-Djava.util.logging.config.file=<ログ設定ファイルのパス>
ログの例
すると、以下のようなログが、ログ用ウィンドウから表示されるようになります。
2008/05/03 16:00:58 DefaultMBeanServerInterceptor registerMBean 詳細レベル (中): ObjectName = JMImplementation:type=MBeanServerDelegate 2008/05/03 16:00:58 Repository addMBean 詳細レベル (中): name=JMImplementation:type=MBeanServerDelegate 2008/05/03 16:00:58 DefaultMBeanServerInterceptor addObject 詳細レベル (中): Send create notification of object JMImplementation:type=MBeanServerDelegate 2008/05/03 16:00:58 DefaultMBeanServerInterceptor sendNotification 詳細レベル (中): JMX.mbean.registered JMImplementation:type=MBeanServerDelegate 2008/05/03 16:00:58 StandardMBean getMBeanInfo 詳細レベル (中): Building MBeanInfo for sun.management.ClassLoadingImpl 2008/05/03 16:00:58 DefaultMBeanServerInterceptor registerMBean 詳細レベル (中): ObjectName = java.lang:type=ClassLoading 2008/05/03 16:00:58 Repository addMBean