log4j: advanced log : Log4j « Language Basics « Java






log4j: advanced log

log4j: advanced log
  
/*
Logging In Java with the JDK 1.4 Logging API and Apache log4j
by Samudra Gupta    
Apress Copyright 2003 
ISBN:1590590996

*/


import org.apache.log4j.Logger;
import org.apache.log4j.NDC;

public class AdvancedLogging {
  private static Logger logger = Logger.getLogger("name");

  private String userName = null;

  private double balance;

  /** Creates a new instance of AdvancedLogging */
  public AdvancedLogging(String user) {
    this.userName = user;
  }

  /**
   * Deposit some amount
   */
  public void deposit(double amount) {
    NDC.push(userName);
    balance += amount;
    logger.info("Deposited " + amount + " new balance: " + balance);
    NDC.pop();
  }

  /**
   * withdraw some amount
   */
  public void withdraw(double amount) {
    NDC.push(userName);
    if (balance >= amount) {
      balance -= amount;
      logger.info("Withdrawn " + amount + " new balance: " + balance);
    } else {
      System.out.println("Not enough balance");
      logger.error("Failed to withdraw: balance: " + balance
          + " attempted withdraw: " + amount);
    }
    NDC.pop();
  }

  public static void main(String args[]) {
    AdvancedLogging demo = new AdvancedLogging("sam");
    demo.deposit(100.50);
    demo.withdraw(80);
    demo.withdraw(50);
  }
}


           
         
    
  








Related examples in the same category

1.Example log4j Configuration File
2.log4j: simple loglog4j: simple log
3.log4j: log and servlet
4.log4j: File Based Logg Demolog4j: File Based Logg Demo
5.log4j: asynchronous log log4j: asynchronous log
6.log4j: A complete examplelog4j: A complete example
7.log4j: layout demolog4j: layout demo
8.set the level of the root logger to DEBUG and set its appender as an appender named testAppender
9.define a named logger
10.set the appender named testAppender to be a console appender
11.set the layout for the appender testAppender
12.define the root logger with two appenders writing to console and file
13.define your own logger named com.foo
14.and assign level and appender to your own logger
15.define the appender named FILE
16.define the appender named CONSOLE
17.log4j Configuration File: #set the level of the root logger to DEBUG and set its appender as an appender named X
18.log4j Configuration File: set the appender named X to be a console appender
19.log4j Configuration File: set the layout for the appender X
20.log4j Configuration File: define the root logger with two appenders writing to console and file
21.log4j Configuration File: define your own logger named com.foo
22.log4j Configuration File: assign appender to your own logger
23.log4j Configuration File: define the appender named
24.log4j Configuration File: define the appender named CONSOLE
25.log4j.properties: set the level of the root logger to DEBUG (the lowest level) and set its appenders named DEBUG and CONSOLE
26.log4j.properties: set your own logger
27.log4j.properties: set the appender CONSOLE
28.log4j.properties: set the appender FILE
29.log4j.properties: set the appender ROLLING
30.log4j.properties: set the appender DAILY
31.log4j.properties: set the layout for the appenders
32.log4j.properties: file layout
33.log4j.properties: rolling layout
34.log4j.properties: daily layout
35.log4j config file: configuring the root logger
36.log4j config file: configuring the named logger
37.log4j config file: configuring the appender CONSOLE
38.log4j config file: configuring the layout TTCCLayout
39.html.properties: configuring the custom logger
40.xml.properties: configuring the custom logger
41.jdbc.properties configuration file for log4j
42.jms.properties configuration file for JMS
43.nt.properties for NT configuration
44.smtp.properties for EMail based logging
45.Pass the configuration file and configuration class
46.Logging Servlet with log4j