eXo lets you choose whatever logging engine you want as this is generally influences by the AS runtime or internal policy.
This is done through an eXo component called
LogConfigurationInitializer.
org.exoplatform.services.log.LogConfigurationInitializer
that reads init parameters and configures logging system according to
them. The parameters:
configurator - an implementation of the
LogConfigurator interface with one method
configure() that accepts a list of properties (3rd init parameter)
to configure the underlying log system using the concrete mechanism.
Again, there are three configurators for the most known log systems
(commons, log4j, jdk).
properties - properties to configure the concrete log system (system properties for commons, log4j.properties or logging.properties for commons, log4j and jdk respectively) Look at the configuration examples below.
logger - an implementation of
commons-logging Log interface. It is possible to use commons
wrappers but to support buffering required by the log portlet three
kinds of loggers were added:
BufferedSimpleLog,
BufferedLog4JLogger and
BufferedJdk14Logger (they contain BufferedLog
and extend SimpleLog, Log4JLogger and Jdk14Logger commons-logging
wrappers respectively).