You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-cvs@jakarta.apache.org by ce...@apache.org on 2001/09/06 23:09:00 UTC

cvs commit: jakarta-log4j/src/sgml intro.sgml manual.sgml

ceki        01/09/06 14:09:00

  Modified:    src/sgml manual.sgml
  Added:       src/sgml intro.sgml
  Log:
  More documentation.
  
  Revision  Changes    Path
  1.2       +4 -96     jakarta-log4j/src/sgml/manual.sgml
  
  Index: manual.sgml
  ===================================================================
  RCS file: /home/cvs/jakarta-log4j/src/sgml/manual.sgml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- manual.sgml	2001/09/06 06:27:09	1.1
  +++ manual.sgml	2001/09/06 21:09:00	1.2
  @@ -1,4 +1,6 @@
  -<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
  +<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
  +<!ENTITY intro SYSTEM "intro.sgml">
  +]>
   
   <book lang="en">
   <bookinfo>
  @@ -36,101 +38,7 @@
   </abstract>
   </bookinfo>
   
  -<chapter id="intro">
  -<title>Introduction</title>
  -
  -<para>
  -Almost every large application includes its own logging or tracing
  -API. In conformance with this rule, the E.U.  <ulink
  -url="http://www.semper.org">SEMPER</ulink> project decided to write
  -its own tracing API. This was in early 1996. After countless
  -enhancements, several incarnations and much work that API has evolved
  -to become log4j, a popular logging package for Java. The package is
  -distributed under the <ulink url="../LICENSE.txt">Apache Software
  -License</ulink>, a fully-fledged open source license certified by the
  -<ulink url="http://www.opensource.org">open source</ulink>
  -initiative. The latest log4j version, including full-source code,
  -class files and documentation can be found at <ulink
  -url="http://jakarta.apache.org/log4j/"><b>http://jakarta.apache.org/log4j/</b></ulink>.
  -</para>
  -
  -<para>Igor Poteryaev, an independent author, has ported log4j to the
  -Python language. Bastiaan Bakker has initiated a C++ port. Their
  -projects are unsurprisingly called <ulink
  -url="http://log4p.sourceforge.net">log4p</ulink> and <ulink
  -url="http://log4cpp.sourceforge.net">log4cpp</ulink>.
  -</para>
  -
  -<para>Inserting log statements into code is a low-tech method for
  -debugging it. It may also be the only way because debuggers are not
  -always available or applicable. This is usually the case for
  -multithreaded applications and distributed applications at large.
  -</para>
  -
  -<para>Experience indicated that logging was an important component of the
  -development cycle. It offered several advantages. It could provide
  -precise <em>context</em> about a run of the application. Once inserted
  -into the code, the generation of logging output required no human
  -intervention.  Moreover, log output could be saved in persistent
  -medium to be studied at a later time. In addition to its use in the
  -development cycle, a sufficiently rich logging package could also be
  -viewed as an auditing tool.
  -</para>
  -
  -<para>As Brian W. Kernigan and Rob Pike put it in their truly excellent
  -book <i>"The Practice of Programming"</i>
  -<blockquote>
  -<literallayout>
  -  As personal choice, we tend not to use debuggers beyond getting a
  -  stack trace or the value of a variable or two. One reason is that it
  -  is easy to get lost in details of complicated data structures and
  -  control flow; we find stepping through a program less productive
  -  than thinking harder and adding output statements and self-checking
  -  code at critical places. Clicking over statements takes longer than
  -  scanning the output of judiciously-placed displays. It takes less
  -  time to decide where to put print statements than to single-step to
  -  the critical section of code, even assuming we know where that
  -  is. More important, debugging statements stay with the program;
  -  debugging sessions are transient.
  -</literallayout>
  -</blockquote>
  -
  -<para>Logging does have its drawbacks. It can slow down an application. If
  -too verbose, it can cause scrolling blindness. To alleviate these
  -concerns, log4j is designed to be fast and flexible. Since logging is
  -rarely the main focus of an application, log4j API strives to be
  -simple to understand and to use.
  -</para>
  -
  -
  -<sect1>
  -<title>Copyright</title>
  -<para></para>
  -</sect1>
  -
  -<sect1>
  -<title>Installing</title>
  -
  -<para>The latest version of log4j can be fetched from <ulink
  -url="http://jakarta.apache.org/log4j/docs/download.html">http://jakarta.apache.org/log4j/docs/download.html</ulink>. 
  -</para>
  -
  -<para>Releases are available in two formats: <filename>zip<filename>
  -and <filename>tar.gz</filename>. After unpacking the distribution, you
  -should have the file
  -<filename>$LOG4J_HOME/dist/lib/log4j.jar</filename> where $LOG4J_HOME
  -is the directory where you unpacked the distribution.
  -
  -<caution>hello aasdf</caution>
  -
  -</sect1>
  -
  -<sect1>
  -<title>First run</title>
  -<para></para>
  -</sect1>
  -</chapter>
  -
  +&intro
   
   <chapter>
   <title>Architecture</title>
  
  
  
  1.1                  jakarta-log4j/src/sgml/intro.sgml
  
  Index: intro.sgml
  ===================================================================
  <chapter id="intro">
  <title>Introduction</title>
  
  <para>
  Almost every large application includes its own logging or tracing
  API. In conformance with this rule, the E.U.  <ulink
  url="http://www.semper.org">SEMPER</ulink> project decided to write
  its own tracing API. This was in early 1996. After countless
  enhancements, several incarnations and much work that API has evolved
  to become log4j, a popular logging package for Java. The package is
  distributed under the <ulink url="../LICENSE.txt">Apache Software
  License</ulink>, a fully-fledged open source license certified by the
  <ulink url="http://www.opensource.org">open source</ulink>
  initiative. The latest log4j version, including full-source code,
  class files and documentation can be found at <ulink
  url="http://jakarta.apache.org/log4j/"><b>http://jakarta.apache.org/log4j/</b></ulink>.
  </para>
  
  <para>Igor Poteryaev, an independent author, has ported log4j to the
  Python language. Bastiaan Bakker has initiated a C++ port. Their
  projects are unsurprisingly called <ulink
  url="http://log4p.sourceforge.net">log4p</ulink> and <ulink
  url="http://log4cpp.sourceforge.net">log4cpp</ulink>.
  </para>
  
  <para>Inserting log statements into code is a low-tech method for
  debugging it. It may also be the only way because debuggers are not
  always available or applicable. This is usually the case for
  multithreaded applications and distributed applications at large.
  </para>
  
  <para>Experience indicated that logging was an important component of the
  development cycle. It offered several advantages. It could provide
  precise <em>context</em> about a run of the application. Once inserted
  into the code, the generation of logging output required no human
  intervention.  Moreover, log output could be saved in persistent
  medium to be studied at a later time. In addition to its use in the
  development cycle, a sufficiently rich logging package could also be
  viewed as an auditing tool.
  </para>
  
  <para>As Brian W. Kernigan and Rob Pike put it in their truly excellent
  book <i>"The Practice of Programming"</i>
  <blockquote>
  <literallayout>
    As personal choice, we tend not to use debuggers beyond getting a
    stack trace or the value of a variable or two. One reason is that it
    is easy to get lost in details of complicated data structures and
    control flow; we find stepping through a program less productive
    than thinking harder and adding output statements and self-checking
    code at critical places. Clicking over statements takes longer than
    scanning the output of judiciously-placed displays. It takes less
    time to decide where to put print statements than to single-step to
    the critical section of code, even assuming we know where that
    is. More important, debugging statements stay with the program;
    debugging sessions are transient.
  </literallayout>
  </blockquote>
  
  <para>Logging does have its drawbacks. It can slow down an application. If
  too verbose, it can cause scrolling blindness. To alleviate these
  concerns, log4j is designed to be fast and flexible. Since logging is
  rarely the main focus of an application, log4j API strives to be
  simple to understand and to use.
  </para>
  
  
  <sect1>
  <title>Copyright</title>
  <para></para>
  </sect1>
  
  <sect1>
  <title>Installing</title>
  
  <para>The latest version of log4j can be fetched from <ulink
  url="http://jakarta.apache.org/log4j/docs/download.html">http://jakarta.apache.org/log4j/docs/download.html</ulink>. 
  </para>
  
  <para>Releases are available in two formats: <filename>zip<filename>
  and <filename>tar.gz</filename>. After unpacking the distribution, you
  should have the file
  <filename>$LOG4J_HOME/dist/lib/log4j-version.jar</filename> where
  <varname>$LOG4J_HOME</varname> is the directory where you unpacked the
  log4j distribution.
  
  <para>To start using log4j simply add this jar file to your
  <varname>CLASSPATH</varname>.</para>
  
  </sect1>
  
  <sect1>
  <title>First run</title> <para></para>
  </sect1>
  </chapter>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-cvs-unsubscribe@jakarta.apache.org
For additional commands, e-mail: log4j-cvs-help@jakarta.apache.org