On 2/14/2017 2:30 PM, Richard Eckart de Castilho wrote:
>> On 14.02.2017, at 17:26, Marshall Schor <[email protected]> wrote:
>>
>> Meanwhile, I renamed the core method to getUimaLogger(), which now is nicely
>> symmetric with getSlf4jLogger(), so I kind of like it.
>>
>> And Joern is suggesting we deprecate the uima loggers in favor of more
>> conventional ones.
>> Do you have an opinion on this?
> Well... I have seen many people not using the UIMA logging framework
> and instead simply fetching a log4j logger or other logging framework
> logger and using that.
>
> I tend to prefer the UIMA logging framework because that means that
> UIMA components use the same logging no matter where they are run.
> It would be annoying if component A would be logging against SLF4J,
> component B logs against JUL, component C logs against commons-logging,
> etc.
>
> SLF4J is by far the framework with which I have had most problems in the
> past mainly because many people don't understand that they should not depend
> on specific backends in their code.
>
> Reflecting the name of a particular external (i.e. non-UIMA) logging 
> framework in a UIMA core method leaves me felling a bit uncomfortable.

The only reason I did this was to permit UIMA itself to start adding MDC/NDC
context information that loggers could pick up, as well as Markers.  The least
common denominator I found to permit doing that, and not binding a particular
logging back end was slf4j.

> If we choose to endorse SLF4J, ok - but then I kind of would be with
> Jörn - people can just obtain the logger themselves. The only benefit
> I would see is that channeling people through our on logger factory
> method would provide some control/best practice over the logger
> naming scheme... but that's typically going by the classname anyway.
OK.
> So presently, I would be in favor of dropping "getSlf4jLogger()".
> I could imagine replicating the SLF4J API in the UIMA logging
> framework. Not sure about entirely dropping the UIMA logging
> framework though.
OK.  I think I'll keep the old UIMA framework to reduce the friction of having
existing pipelines adopt v3, and to allow a longer on - ramp for converting
(over time, if we desire) UIMA's own use of logging to slf4j + MDC/NDC/Markers.

Thanks for your thoughts! -Marshall
>
> Cheers,
>
> -- Richard
>
>
>

Reply via email to