I've been a Log4j 1 user for years and I love it. I'm currently writing a book 
for Java EE 7 + Spring Framework 4 development and one of my chapters is on 
application logging. I was going to cover Log4j 1 and then I stumbled upon 
Log4j 2. It looks like a serious improvement over Log4j 1 and I'm quite excited 
about it. There are three important things that I couldn't find on the site (I 
read the entire manual, and looked at what I thought were all of the pages, but 
it's possible I've missing something). I'm hoping someone here can sort it out 
for me:

1) How stable is the API at this point? I understand the hazards of beta 
software, but are we talking "it could be drastically different in six months" 
or "chances are it won't change much from here on out?" I don't expect a 
precise answer, just some guidance.

2) What is the /projected/ GA date? I know that dates are never certain with 
open source software, and I don't expect somebody to tell me that it'll be GA 
on July 21, 2013. But are we talking weeks, months, or upwards of a year? If my 
book goes to press in November of this year, do I risk that Log4j 2 isn't out 
by that time if I include it?

3) Where is the darned JavaDoc API documentation? I'm quite used to how easy it 
is to find in the Commons, on the Tomcat site, and on the Log4j 1 site (there's 
a big link that says "JavaDoc" in the sidebar). But I was rather flabbergasted 
by the fact that I couldn't find any on the Log4j 2 site. Specifically, I'm 
looking for the JavaDoc pages for the API, the Implementation, and the Commons 
Logging Bridge.

Also, I have a general question about the API versus Commons Logging. For years 
my understanding, reading, and training have told me to use Commons Logging so 
that the underlying implementation could be easily switched out if needed (even 
though I have never strayed from Log4j). However, with Log4j 2 it looks like 
the API being separated from the Implementation makes this an unnecessary step, 
and could cause performance to suffer. So, I wonder:

A) How important is using Commons Logging as a facade in front of Log4j 
anymore? It sounds like it matters less now, and could cause performance to 
suffer.

B) Should libraries still use Commons Logging, but applications start using the 
Log4j 2 API instead?

C) Will my existing libraries using Commons Logging 1.1 play nicely with Log4j 
2? Or will they struggle to find a facility to log with? Do I need the Commons 
Logging Bridge to make these existing libraries log properly (that's what it 
sounds like, but I want to make sure)?

Thanks in advance for any answers I receive!

Nick
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to