Web Hosting

JSP Hosting

Servlet Hosting

JAVA Hosting

J2EE Hosting

JBOSS Hosting

Tomcat Hosting

SSL Certificates

Order Now


New to hosting?
Check out the step-by-step guides to help you get started.
Setting up your 1st website
Transferring your website

Domain Search: www.

SERVERS & NETWORK  |  SUPPORT  |  WHY OXXUS  |  TESTIMONIALS  |  ABOUT US  |  CONTACT |  ORDER NOW

  

 

Integrating the Jakarta-Log4J Project

 

 

Configurators

 

Now that we know how the three main components of Log4J are used, we can take a look at how these components are configured for actual use. Log4J can be configured programmatically or by using configuration files. For our examples, we use configuration files.

 

Log4J currently supports two types of configuration files: a regular Java properties file and an XML properties file. We will use a Java properties file for our examples. A Log4J properties file can be divided into three sections. Each section maps to a Category, an Appender, or a Layout. The following code snippet contains a sample properties file.

## CATEGORIES ##
#define a category named chapter11.Log4JApp
log4j.category.chapter11.Log4JApp=WARN, console, file
## APPENDERS ##
# define an appender named console, which is set to be a
ConsoleAppender
log4j.appender.console=org.apache.log4j.ConsoleAppender
# define an appender named file, which is set to be a
RollingFileAppender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=log.txt
## LAYOUTS ##
# assign a layout to both appenders
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
log4j.appender.file.layout=org.apache.log4j.SimpleLayout

 

The best way to examine this file is to start from the top with the CATEGORIES section. In this section, we define a new Category named chapter11.Log4JApp.

 

In its definition, we are setting the log Priority to WARN. We are also assigning two Appenders to this Category, console and file, which are both defined in the APPENDERS section.

 

The next section is the APPENDERS section, which defines the available Appenders for this configuration. Here, we define two Appenders: console and file. The console Appender uses the ConsoleAppender class that we spoke of earlier, which simply logs all messages to the application console.

 

The file Appender uses the RollingFileAppender, which appends all of the log messages to a log file named by the log4j.appender.file.File property. The final section of this file is the LAYOUTS section.

 

In this section, we are directing both the console and file Appenders to use the SimpleLayout, which is represented by org.apache.log4j.SimpleLayout. In summary, this configuration file defines a Category named chapter11.Log4JApp that logs all messages with a Priority that is greater than or equal to WARN to both the console and a file named log.txt in a format similar to the following:

 

DEBUG - This is the log message!
To load this configuration, you would use the static PropertyConfigurator.configure() method with the path to the Log4J properties file. The following line of code gives an example of this. PropertyConfigurator.configure(propfile);

Using Log4J in an Application

Now that we have a basic understanding of Log4J and its components, let's actually look at how it can be used.

We are going to do this by creating a standard Java application that loads a Log4J properties file and uses the defined categories to log its messages.

 

There is really nothing special about this file: it starts by loading two categories cat and childcat, with the first being the parent, referencing the chapter11.Log4JApp Category definition, and the second referencing chapter11.Log4JApp.child Category definition, which is the child of the first.

 

After these two categories are loaded, we begin making log requests to them. For each Category, we are calling all of the priority-driven logging methods, passing them a simple message with the category name appended to the end.

 

The result is a log file named log.txt that contains all of the log messages with a priority of WARN or greater. An example of this file after a single execution can be found in the following snippet:


WARN - This is a log message from the chapter11.Log4JApp

ERROR - This is a log message from the chapter11.Log4JApp

FATAL - This is a log message from the chapter11.Log4JApp

WARN - This is a log message from the chapter11.Log4JApp.child
ERROR - This is a log message from the chapter11.Log4JApp child

FATAL - This is a log message from the chapter11.Log4JApp.child

 

As you look over this file, you should note that the childcat did in fact inherit the cat's Priority and Appender

 

Part 1 - Part 2 - Part 3

 

(c) Copyright 2003 Oxxus Tomcat6 Hosting Services. All rights reserved



Order with confidence
100% Secure Ordering
Privacy Policy
Money back guarantee


...........................................

 

Tomcat server tutorials:

What is Tomcat Valve?

Tomcat security realms

Log4j project

How to install Apache & Tomcat server?

How to use tomcat manager?

Jakarta Tomcat server overview

Persistent sessions

Embeddng Tomcat services

Find more about tomcat architecture

How to install Tomcat on Windows & Linux

 

Copyright ® 2003-2007 Oxxus.Net * USA * UK * AUP * Best web hosting solutions from internets leading web hosting provider * Tutorials * Resources * Blog * FAQ