You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

How to Configure the Logging Factory and the Logging Class

One of the questions that popped up on the Turbine mailing list is, why there is no commons-logging.properties file for Turbine.

At this point I started wondering, whether one could use this to actually configure logging for Turbine applications . I looked at the docs and found the docs on how to configure the [http://jakarta.apache.org/commons/logging/apidocs/org/apache/commons/logging/LogFactory.html LogFactory] buried three deep in the API docs.

In Turbine 2.3 we have used

//
// Set up Commons Logging to use the Log4J Logging
//
System.getProperties().setProperty(LogFactory.class.getName(),
                                   Log4jFactory.class.getName());

to set up the [http://jakarta.apache.org/commons/logging/apidocs/org/apache/commons/logging/LogFactory.html LogFactory ] class which is not exactly the most elegant thing to do.

If you know, where to look, you will find a page in the docs which describes the configuration process in detail. [http://jakarta.apache.org/commons/logging/apidocs/org/apache/commons/logging/package-summary.html Look here.]

Please note, that you must still configure the underlying logging layer. So configuring commons-logging does not give you automatically a fully configured [http://logging.apache.org/log4j/docs/ Log4J ] Logger.

For a small application without many logging needs, I'd recommend to use the commons-logging.properties method. Put a file called commons-logging.properties in your class path with the following contents:

org.apache.commons.logging.Log = org.apache.commons.logging.impl.SimpleLog

This will use the default Factory class implementation and use the integrated simple Logger to send logging output to stderr.

[http://jakarta.apache.org/commons/logging/apidocs/org/apache/commons/logging/impl/SimpleLog.html SimpleLog] can even be configured by a properties file called simplelog.properties on your class path.

Also see [http://jakarta.apache.org/commons/logging/apidocs/org/apache/commons/logging/impl/Log4JLogger.html Log4JLogger]

  • No labels