The Java Remote Method Invocation (Java RMI)
implementation uses the Logging
APIs to provide implementation logging output. The logging configuration file and
programmatic API (java.util.logging
)
can be used to configure Java RMI implementation logging.
The java.rmi.server.logCalls
system property and
the implementation-specific
sun.rmi.*
logging properties that were recognized
by previous JDK versions still function to set the default levels
for the Java RMI implementation Logger
objects and to
cause their output to be directed to System.err
as
with earlier versions.
The table below shows the names of the Logger
objects used by the Java RMI implementation and how they correspond
to the logging properties supported by previous versions.
Note that the Java RMI implementation supports a logging
category, client-side call logging, which is analogous to the
server-side call logging activated by the
java.rmi.server.logCalls
property. Client-side call
logging is output to the Logger
named
sun.rmi.client.call
.
System Property Name | Logger Name | Information Logged |
---|---|---|
java.rmi.server.logCalls |
sun.rmi.server.call |
server-side remote calls and exceptions |
sun.rmi.server.logLevel |
sun.rmi.server.ref |
server-side remote reference activity |
sun.rmi.client.logCalls |
sun.rmi.client.call |
client-side remote calls and exceptions |
sun.rmi.client.logLevel |
sun.rmi.client.ref |
client-side remote reference activity |
sun.rmi.dgc.logLevel |
sun.rmi.dgc |
distributed garbage collection activity |
sun.rmi.loader.logLevel |
sun.rmi.loader |
activity of default
RMIClassLoader provider |
sun.rmi.transport.logLevel |
sun.rmi.transport.misc |
transport-layer activity |
sun.rmi.transport.tcp.logLevel |
sun.rmi.transport.tcp |
TCP binding and connection activity |
sun.rmi.transport.proxy.logLevel |
sun.rmi.transport.proxy |
HTTP tunnelling activity |
(none) | sun.rmi.runtime |
miscellaneous runtime activity |
For both the sun.rmi.client.call
and the
sun.rmi.server.call
Logger
s, exceptions
thrown from remote calls are logged at the level
Level.FINE
, and each remote call is logged at the
level Level.FINER
. Setting the
java.rmi.server.logCalls
or
sun.rmi.client.logCalls
system properties to the value
"true"
causes the corresponding Logger
to
be set to the level Level.FINER
.
For the sun.rmi.*
logging properties that have
names ending in ".logLevel"
, a value of
"BRIEF"
causes the corresponding Logger
to be set to the level Level.FINE
, and a value of
"VERBOSE"
causes the corresponding Logger
to be set to the level Level.FINER
. Use of the logging
configuration file is now preferred over the use of these
sun.rmi.*
system properties for logging.