Java RMI実装ログ

Java Remote Method Invocation (Java RMI)実装では、ロギングAPIを使用して実装のログを出力します。ログ構成ファイルおよびプログラムによるAPI (java.util.logging)は、Java RMI実装ログの構成に使用することができます。

JDKの前のバージョンで認識されていた、java.rmi.server.logCallsシステム・プロパティおよび実装固有のsun.rmi.*ログ・プロパティは引き続き使用可能です。この機能により、前のバージョンと同様、Java RMI実装のLoggerオブジェクトのデフォルト・レベルの設定、およびJava RMI実装ログのSystem.errへの出力が可能です。

Java RMI実装によって使用されるLoggerオブジェクトの名前、および前バージョンでサポートされていたログ・プロパティとの対応について、次の表に示します。

Java RMI実装は、ログ記録カテゴリである、クライアント側呼出しログ記録をサポートしていることに注目してください。これは、java.rmi.server.logCallsプロパティによって起動されるサーバー側呼出しログ記録と類似しています。クライアント側呼出しログ記録は、sun.rmi.client.callという名前のLoggerに出力されます。

システム・プロパティ名 Logger名 ログ記録される情報
java.rmi.server.logCalls sun.rmi.server.call サーバー側のリモート呼び出しおよび例外
sun.rmi.server.logLevel sun.rmi.server.ref サーバー側のリモート参照動作
sun.rmi.client.logCalls sun.rmi.client.call クライアント側のリモート呼び出しおよび例外
sun.rmi.client.logLevel sun.rmi.client.ref クライアント側のリモート参照動作
sun.rmi.dgc.logLevel sun.rmi.dgc 分散ガベージ・コレクション動作
sun.rmi.loader.logLevel sun.rmi.loader デフォルトのRMIClassLoaderプロバイダの動作
sun.rmi.transport.logLevel sun.rmi.transport.misc トランスポート層の動作
sun.rmi.transport.tcp.logLevel sun.rmi.transport.tcp TCPバインディングおよび接続動作
sun.rmi.transport.proxy.logLevel sun.rmi.transport.proxy HTTPトンネリング動作
(なし) sun.rmi.runtime その他のランタイム・アクティビティ

sun.rmi.client.callおよびsun.rmi.server.callLoggerでは、リモート呼び出しからスローされた例外はLevel.FINEレベルでログ記録され、各リモート呼出しは、Level.FINERレベルでログ記録されます。java.rmi.server.logCallsまたはsun.rmi.client.logCallsシステム・プロパティを"true"値に設定すると、対応するLoggerがレベルLevel.FINERに設定されます。

名前の末尾に".logLevel"の付くsun.rmi.*ログ・プロパティの場合、"BRIEF"値に設定すると対応するLoggerがレベルLevel.FINEに設定され、"VERBOSE"値に設定すると対応するLoggerがレベルLevel.FINERに設定されます。ロギング用のこれらのsun.rmi.*システム・プロパティを使用するよりも、ロギング構成ファイルを使用することをお勧めします。


Copyright © 1993, 2020, Oracle and/or its affiliates. All rights reserved.