WARNING: This message contains high amount of intermingled rant content
as well as an abreviated history of how annoying logging issues have
continued to be in POI and how much LOG4J, Commons logging, continue to
SUCK for us. (maybe its just us....yes log4j is fine for using in
inhouse code, but its a big pain for something you're distributing!)
On Fri, 2002-06-07 at 10:07, Eric Pugh wrote:
> The only reason I like logging via something like log4j is that occasionally
> you need to turn logging on in production for a short periond of time.. For
> instance, POI started having errors in production, so I could change my
> debug level to DEBUG for poi, and figured out that I had started passing POI
> some bad data.. I also like being able to use logging to capture my WARN
> and ERROR level errors..
>
We don't really use WARN (its either right, or its wrong), and Errors
get thrown up to your application. So logging is only used in poi for
debugging.
> Won't the changes to commons logging, by splitting the API solve the POI
> related problems...? I have to say, I wish logging was simpler.. I feel
> that some logging packages like Log4j are so powerful, that they don't ever
> get properly used because of the time and learning curve.. Or maybe it's
> just that there isn't a lot of documentation for log4j....
>
We did go to commons logging. Its STILL a headache. Its been a
headache for what....8 months now.
History:
1. Andy and his left in print statements slowed POI down but Andy needed
them.
2. Marc & Andy implement Log4J
2a. incomprehensible messages come in complaining about log4j problems
3. Glen joins the team and revamps logging.
4. more messages come in (some comprehensible) about log4j issues
5. Marc takes a stab at revamping logging
6. POI moves to Apache
7. GUMP builds POI with betas of log4j that break it
8. Unbeknown to andy, someone switches us to some alpha of log4j
9. more messages come in about log4j problems (people have to recompile
POI to work with the versions of log4j they use in production)
10. Ken takes a stab at logging and converts us to commons logging
(and fails to provide any reasonable documentation so logging ceases
to be usable by anyone, and andy starts having to run everything through
his debugger -- and consequently begins talking about himself in the
third person)
11. 1.5 gets released with all logging issues supposidly "fixed"
12. More messages about logging issues come in (some reasonable)
13. Andy wants USEFUL, COMPREHENSIBLE, logging. Even if its simple and
doesn't use everyone's pet projects.
Most of the problems have to do with log4j version mismatch and all of
that.
> I'm in favor of logging, just wish it was simpler!
>
Same here. I mean realistically, unless you're patching code, you'll
probably not use POIs logging. The BiffViewer will tell you way more
than logging will. And if you had any *under load* type of error,
logging would slow it down so much that it wouldn't be useful for that.
But if I need to know what some value was at some point in some routine
without tracing through it (slow) then logging is quite nice...redirect
to a file, open it in vi and you have instant autopsy!
Lets leave logging in, just have the POI wrapper class do Sys.outs when
logging is on, and have a couple VERY SIMPLE properties that are
actually documented. No need for log4j logkit, commons logging,
bebopalooing just something USEABLE/USEFUL and not this huge headache.
-Andy
> Eric
>
>
>
> -----Original Message-----
> From: Andrew C. Oliver [mailto:[EMAIL PROTECTED]]
> Sent: Friday, June 07, 2002 9:47 AM
> To: POI Users List
> Subject: Re: org.apache.commons.logging??
>
>
> Be patient. We're working out what to do about logging once and for
> all. The proposals are:
>
> 1. Rip logging out all together
> 2. Ditch commons logging and log4j et al and just do System.out.println
> when logging is enabled, or noop when its not
>
> The rationale is that logging could NEVER be used in production (unless
> you like ultra slow mode), its only useful
> for developers or those advanced users who need to diagnose/debug a
> problem. Any serious errors should show up
> as exceptions.
>
> I'm -1 on #1 and +1 on #2 -- I'm also +1 on this going into 1.5.1
>
> -Andy
>
> Skondras P. wrote:
>
> >I had the same problem with tomcat 3.2.4 but when i put the commons
> logging.jar in
> >tomcats lib it disappear.
> >When the logging.jar was in servlets WEB-INF lib didn't work
> >All worked fine in tomcat 4.0.3.
> >
> >"A.H" wrote:
> >
> >
> >
> >>Hi,
> >>
> >>I wrote a POI-HSSF component in Struts + Log4j + Weblogic6.1 Enivronment,
> >>but it occurs Error Message.... BTW, it works well in Tomcat 4.0.
> >>
> >><[WebAppServletContext(3519976,MyWebAp,/MyWebAp)] Servlet failed with
> Exception
> >>java.lang.ExceptionInInitializerError:
> org.apache.commons.logging.LogConfigurationException:
> >>java.lang.ClassNotFoundException:
> org.apache.commons.logging.impl.LogFactoryImpl
> >>
> >>But I add the import class
> org.apache.commons.logging.impl.LogFactoryImpl....,
> >>it still occurs.... How to fix this problem?? Or disable logging
> functions in HSSF!!??
> >>
> >>Thanks in advance.
> >>
> >>--
> >>Best Regards,
> >>arch.
> >>
> >>
> >>
> >>
> >
> >
> >
> >
> >
> >
> >------------------------------------------------------------------------
> >
> >--
> >To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
> >For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
> >
>
>
>
>
> --
> To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
>
>
> --
> To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
>
--
http://www.superlinksoftware.com - software solutions for business
http://jakarta.apache.org/poi - Excel/Word/OLE 2 Compound Document in
Java
http://krysalis.sourceforge.net/centipede - the best build/project
structure
a guy/gal could have! - Make Ant simple on complex Projects!
The avalanche has already started. It is too late for the pebbles to
vote.
-Ambassador Kosh
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>