The uv3 Logger now implements a big set of specialized loggers, all of the slf4j
interface, plus a few from log4j that support Java 8 lambda arguments 
(Supplier).

The uimaFIT ExtendedLogger implemented a few of these "named" logging variants.

The conventions used are slightly different.

UV3:  the SEVERE/WARNING/INFO/CONFIG/FINE/FINER/FINEST were mapped:

SEVERE  <-> ERROR
WARNING <-> WARN
INFO    <-> INFO
CONFIG  <-> INFO   (distingushed by a marker, UIMA_MARKER_CONFIG)
FINE    <-> TRACE  (distingushed by a marker, UIMA_MARKER_FINE) 
FINER   <-> TRACE  (distingushed by a marker, UIMA_MARKER_FINER) 
FINEST  <-> DEBUG

while the uimaFIT chose:

SEVERE  <-> ERROR
WARNING <-> WARN
INFO    <-> INFO
CONFIG  <-> not available
FINE    <-> TRACE
FINER   <-> DEBUG
FINEST  <-> not available

Although we could keep the uimaFIT ExtendedLogger as is, this could have strange
behavior for users, in that the uimaFIT methods would have one mapping, and the
slf4j style ones would have another.  For example:

logger.debug(Object param)  // a uimaFIT call
logger.debug(String msg)         // a slf4j style call
logger.debug(String msg, Object parm)  // another slf4j style call

See https://www.slf4j.org/apidocs/org/slf4j/Logger.html for all of the calls...

The slf4j calls would correspond to FINEST, while the uimaFIT ones would
correspond to FINER.

I'm wondering what's the best way to align these?

-Marshall

Reply via email to