Hello All,

Thanks to Martin Perina efforts[1] the ovirt-engine logging was cleaned up 
significantly throughout the engine.

1. Logging Facade is slf4j.
2. Logging backend is jboss logging at jboss and java.util.logging at 
standalone.
3. No more commons-logging, log4j, combinations nor proprietary loggers.

The org.ovirt.engine.core.utils.log.LogFactory and 
org.ovirt.engine.core.utils.log.Log are depreciated now, the correlation id is 
managed using logging MDC, so no need to use wrapper, and correlation has much 
wider effect, as also 3rd parties log records are attached with correlation id.

We will start to push changes to remove the usage of these classes in favor of 
plain slf4j loggers.

Quick lineup...

1. Usage:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
class x {
    private static final Logger log = LoggerFactory.getLogger(x.class);
}

2. slf4j logger javadoc is here[2].

3. Crash course:

// simple string
log.info("string");

// string with exception and stack trace
log.info("string", exception);

// string with vars, logger will call argN.toString() for each {}.
log.info("string {} {} {}", arg1, arg2, arg3);

4. *NOTICE* Major difference than what we had:

Exception arguments are not "magically" detected.

// previous (utils Log): "exception" magically detected.
log.infoFormat("string {0}", arg1, exception);

// new (slf4j):
log.info("string {}", arg1);
log.info("Exception", exception);

// better new (slf4j):
log.info("string {}", arg1);
log.debug("Exception", exception);

Please do not hesitate to raise any related issue you may find.

Regards,
Alon Bar-Lev.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1109871
[2] http://www.slf4j.org/api/org/slf4j/Logger.html
_______________________________________________
Devel mailing list
Devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/devel

Reply via email to