Am 18.03.2017 um 22:37 schrieb Adam Gent:
But the chicken/egg problem is real albeit solvable particularly with
more powerful logging backends.
I am not aware of any chicken/egg problems here.
The course of events is (roughly; in particular, I'm skipping
configuration because I forgot whether that's before or after backend
initialization):
- SLF4J initializes its API so it can accept logging calls.
- SLF4J starts initializing backend machinery.
- Backend machinery emits log messages to SLF4J.
- SLF4J knows it is in a sort-of recursive call,
so it knows it does not have a backend yet
and simply stores the message in a list.
- Backend machinery is done initializing,
return to SLF4J's initialization routine.
- SLF4J checks if backend machinery initialization failed;
if yes:
- SLF4J outputs the messages from the list to stderr.
if no:
- SLF4J feeds the messages from the list to the backend.
There would be a chicken-and-egg problem if SLF4J tried to use the
backend before it is initialized. But that does not happen.
_______________________________________________
slf4j-user mailing list
[email protected]
http://mailman.qos.ch/mailman/listinfo/slf4j-user