Hi. I'm back.

First of all, I appreciate the information received already as a response to my initial post, and I am thankful for it. I keep on reading and collecting the new stuff coming, and getting enlightened by it. There is a lot of information there, which for a large part - in my opinion - is not in the current Tomcat published documentation, or not in a way that a person with occasional and superficial contact with Tomcat can find or understand. But, together with the insights gained through this list, it slowly starts to click into place.

This discussion started (a couple of threads ago) with a request on logging configuration, made by a user - me - who could not make sense of the files on his system(s), either belonging to Tomcat or produced by it. It quickly degenerated into a slinging match mostly related to Tomcat packaging.

To attempt a summary of the discussions so far, it sems that there are two distinct groups : Tomcat developers, and Tomcat users, and that their views differ sometimes substantially on what a logging system should do, and what a documentation should contain and how it should be written. That is probably normal, because each person is looking at it in a different way, in function of his needs. The developers seem to be happy with the logging and its documentation as it is, and consider it clear, or at least accessible. The users, as far as I can tell from the correspondence I receive, generally have a different opinion.

I believe that the difference of opinions rests basically on the following : at some point in time, the developers of Tomcat - who it should be remembered do this for free - decided that maintaining Tomcat's own logging mechanism wasn't really worth their time and efforts, considering that there existed already a couple of external libraries (packages?) which did the job better anyway. They thus split that part off, allowing them to concentrate on more interesting and rewarding parts of the code. And they have no intention of moving back. Them being the developers of a product offered free of charge, nobody can or should discuss their decision or blame them for it.

What I personally believe they forgot at that point, is that there are many users of Tomcat who are not pure Java or Tomcat developers; that these users, having acquired over time a reasonable understanding of how to use Tomcat - if not necessarily how it works inside - now suddenly are faced with the need to get acquainted with a whole bunch of things of which they do not have a clue (commons-logging, juli, log4j), which per se do not really interest them (because they are not mainly Java developers) and which by themselves require quite an investment in time in order to start understanding how they work.

From a user point of view, how to express it better than comparing logging in Tomcat 4.1, with logging in Tomcat 5.5 :

- to create a logfile in Tomcat 4.1, the user inserted this in his server.xml or context.xml at the appropriate place :

        <Logger className="org.apache.catalina.logger.FileLogger"
                directory="logs" prefix="localhost_" suffix=".log"
                timestamp="true"/>

Basically, that was it. If you needed logging at another level, you just copied this section and pasted it wherever logically it seemed to fit. It wasn't terribly flexible, and did not help immensely for debugging code, but that was not the main purpose, and for the main purpose of the vast majority of users, it sufficed. One did not really need to understand how a Logger worked, and one could rather easily guess from the atributes what could be tweaked and how. Unless you really wanted to do something special, you did not even need to go to the documentation or to Tomcat's Users List. And it was amazingly and elegantly simple. There are really not a lot of software products where you can just get a new logfile at whatever level by dropping a simple paragraph in a configuration file.

- to create a logfile in Tomcat 5.5or 6.0 on the other hand, one starts instead with this (once one has found it) :

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, 5host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.

2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.

...(edited for brevity, if you can believe that)...

and, to start understanding the above, one *must* at least read the page at
http://tomcat.apache.org/tomcat-5.5(6.0)-doc/logging.html
and even so, one is constantly reminded that, to /really/ understand what is going on, one should start by understanding Java logging, then follow up with juli and/or log4j.

I don't think I need to continue. Mere Tomcat users will understand what I mean, and Tomcat developers can imagine what the average bloke using Tomcat occasionally, thinks when he stumbles upon this. (And yes, it is from a particular packaging of Tomcat, but that's not the point here; the official one is not simpler).

Now above I am playing somewhat dumb, because since this thread started, I have already started to understand some aspects of the above. But even with this increased understanding, my basic feeling about it remains that it looks like a gigantic overkill and waste of time compared to the needs - and time available for this - of most Tomcat users. To look at it another way, by making this change, and for most simple cases, one has replaced 3 lines inserted in server.xml or context.xml, by hundreds of lines "all over the place" (I am counting the docs, because they are needed now, and they were not before). I can imagine on the other hand that for developers this might be an immense improvement, but again that's not the point here.

I will continue to study it of course, because I have no choice if I want to twiddle ever so slightly with the logfiles and not bring down my production servers. And I will end up understanding it, because I don't give up easily, as you may have noticed.

But, relief, this is my own last post on the subject, because I think that now, finally, I have gathered enough information - thanks to some people on this list, among which Mark, Chris (and even Chuck) - to allow me to start playing around with a modicum of understanding of what I'm playing with.

I would however like to ask a final question, or maybe make a suggestion :

Is it not possible for the Tomcat developers to take into account the needs of people like me, who have only a minimal understanding of the underlying beauties and refinements, but who nevertheless appreciate Tomcat very much as a tool, and to take a step back in our direction and make us really impressed and happy ?

It should be a technical piece of cake for programmers of your capacity, to continue to use commons-logging, juli, log4j or whatever you prefer as the underlying mechanism, and to make it directly available for people who want to get down to the gritty details, while providing the average user with an interface that hides away this complexity under a simple connecting element. Like for example this :

  <Logger className="org.apache.juli.FileHandler"
      directory="logs" prefix="localhost." suffix=".log"
      timestamp="yyyy-mm" rotate="true" level="FINE"/>

You can then tuck away the real underlying properties files wherever the system packagers won't find them, or even embed them in the code itself to make sure.

Understand me well : I am not harking back to the old times when life was simple, and I understand that Tomcat has gotten more complex and requires a correspondingly more powerful logging mechanism.

But I believe that the ultimate beauty of a complex piece of machinery, is when it can be presented as something so simple and neat that a child could use it. I think of that each time I see my son play with his iPod, or my mother with her GPS car navigator.

André

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to