log4j学习

配置文件log4j.properties
#设置级别。不明白什么意思
log4j.rootCategory=, A1,R 


#写入文件的方式,输出到文件中
log4j.appender.R=org.apache.log4j.RollingFileAppender

log4j.appender.R.layout=org.apache.log4j.HTMLLayout

#RollingFileAppender有个setFile方法。可能是这意思吧
log4j.appender.R.File=hello.html


#以什么方式输出下边是控制台ConsoleAppender
log4j.appender.A1=org.apache.log4j.ConsoleAppender 
#以什么格式输出,下边是html格式
log4j.appender.A1.layout=org.apache.log4j.HTMLLayout
#把上边的html是用一定的格式输出
#log4j.appender.A1.layout.ConversionPattern=[slf5s.start]%d{DATE}[slf5s.DATE]%n%p[slf5s.PRIORITY]%n%x[slf5s.NDC]%n%t[slf5s.THREAD]%n%c[slf5s.CATEGORY]%n%l[slf5s.LOCATION]%n%m[slf5s.MESSAGE]%n%n

#LF5Appender 好像是输出到一个swing界面
#log4j.appender.A1=org.apache.log4j.lf5.LF5Appender
#LF5Appender有个MaxNumberOfRecords属性。这赋予值
#log4j.appender.A1.MaxNumberOfRecords=1000
 
log4j的例子
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package InitUsingLog4JProperties;

import org.apache.log4j.Logger;

import java.io.IOException;

/**
 * This class is a simple example of how to use the LogFactor5 logging
 * window.
 *
 * The LF5Appender is the primary class that enables logging to the
 * LogFactor5 logging window. The simplest method of using this Appender
 * is to add the following line to your log4j.properties file:
 *
 *    log4j.appender.A1=org.apache.log4j.lf5.LF5Appender
 *
 * The log4j.properties file MUST be in you system classpath. If this file
 * is in your system classpath, a static initializer in the Category class
 * will load the file during class initialization. The LF5Appender will be
 * added to the root category of the Category tree.
 *
 * Create a log4j.properties file and add this line to it, or add this line
 * to your existing log4j.properties file. Run the example at the command line
 * and explore the results!
 *
 * @author Brent Sprecher
 */

// Contributed by ThoughtWorks Inc.

public class InitUsingLog4JProperties {
    //--------------------------------------------------------------------------
    //   Constants:
    //--------------------------------------------------------------------------

    //--------------------------------------------------------------------------
    //   Protected Variables:
    //--------------------------------------------------------------------------

    //--------------------------------------------------------------------------
    //   Private Variables:
    //--------------------------------------------------------------------------

    private static Logger logger =
            Logger.getLogger(InitUsingLog4JProperties.class);

    //--------------------------------------------------------------------------
    //   Constructors:
    //--------------------------------------------------------------------------

    //--------------------------------------------------------------------------
    //   Public Methods:
    //--------------------------------------------------------------------------

    public static void main(String argv[]) {
        // Add a bunch of logging statements ...
    	logger.trace("hello");
        logger.debug("Hello, my name is Homer Simpson.");
        logger.debug("Hello, my name is Lisa Simpson.");
//        logger.debug("Hello, my name is Marge Simpson.");
//        logger.debug("Hello, my name is Bart Simpson.");
//        logger.debug("Hello, my name is Maggie Simpson.");
//
        logger.info("We are the Simpsons!");
//        logger.info("Mmmmmm .... Chocolate.");
//        logger.info("Homer likes chocolate");
//        logger.info("Doh!");
//        logger.info("We are the Simpsons!");
//
//        logger.warn("Bart: I am through with working! Working is for chumps!" +
//                "Homer: Son, I'm proud of you. I was twice your age before " +
//                "I figured that out.");
//        logger.warn("Mmm...forbidden donut.");
//        logger.warn("D'oh! A deer! A female deer!");
//        logger.warn("Truly, yours is a butt that won't quit." +
//                "- Bart, writing as Woodrow to Ms. Krabappel.");
//
//        logger.error("Dear Baby, Welcome to Dumpsville. Population: you.");
//        logger.error("Dear Baby, Welcome to Dumpsville. Population: you.",
//                new IOException("Dumpsville, USA"));
//        logger.error("Mr. Hutz, are you aware you're not wearing pants?");
//        logger.error("Mr. Hutz, are you aware you're not wearing pants?",
//                new IllegalStateException("Error !!"));
//
//
//        logger.fatal("Eep.");
//        logger.fatal("Mmm...forbidden donut.",
//                new SecurityException("Fatal Exception"));
//        logger.fatal("D'oh! A deer! A female deer!");
//        logger.fatal("Mmmmmm .... Chocolate.",
//                new SecurityException("Fatal Exception"));
    }

    //--------------------------------------------------------------------------
    //   Protected Methods:
    //--------------------------------------------------------------------------

    //--------------------------------------------------------------------------
    //   Private Methods:
    //--------------------------------------------------------------------------

    //--------------------------------------------------------------------------
    //   Nested Top-Level Classes or Interfaces:
    //--------------------------------------------------------------------------

}
 

你可能感兴趣的:(apache,thread,html,log4j,swing)