使用log4japi生成简单java类的日志

使用log4japi生成简单java类的日志,java,log4j,Java,Log4j,我有一个疑问,如果我写一个简单的Java类,我想看到在后面执行的日志,比如JVM在后端执行的日志。我带着log4j罐子。你能给我一些如何实现这一目标的建议吗 我希望看到在WebApp中生成的相同日志,这样我就可以在Java应用中重用它。试着在这里查看log4japi/demo 您可以使用log4j为任何类和任何应用程序afaik生成日志,它不一定是web应用程序 您可以使用log4j为任何类和任何应用程序生成日志,它不一定是web应用程序。这是一个非常简单的方法,您应该能够适应您试图实现的目标。

我有一个疑问,如果我写一个简单的Java类,我想看到在后面执行的日志,比如JVM在后端执行的日志。我带着log4j罐子。你能给我一些如何实现这一目标的建议吗


我希望看到在WebApp中生成的相同日志,这样我就可以在Java应用中重用它。

试着在这里查看log4japi/demo


您可以使用log4j为任何类和任何应用程序afaik生成日志,它不一定是web应用程序

您可以使用log4j为任何类和任何应用程序生成日志,它不一定是web应用程序。

这是一个非常简单的方法,您应该能够适应您试图实现的目标。

这是一个非常简单的方法,您应该能够适应您试图实现的目标。

如果您的“简单Java类”恰好位于Java EE容器中(如Tomcat、JBoss或WebSphere中的.jsp或servlet),那么您需要做的就是:

1) 导入org.apache.log4j.Logger

2) 在类中声明静态实例:

 EXAMPLE:  `static Logger logger = Logger.getLogger ("MyApp");`
3) 使用你的记录器

 EXAMPLE: `logger.info ("something interesting happened");`
4) 如果您在类路径中包含log4j.java和您自己的log4j.properties,那么您不需要做任何其他事情

以下是有关在Tomcat或应用服务器上使用log4j的更多信息:

下面是一个非常简单的“做日志记录”示例程序,来自上面的tutorialspoint.com链接:

import org.apache.log4j.Logger;

import java.io.*;
import java.sql.SQLException;
import java.util.*;

public class log4jExample{
  /* Get actual class name to be printed on */
  static Logger log = Logger.getLogger(
                      log4jExample.class.getName());

  public static void main(String[] args)
                throws IOException,SQLException{

     log.debug("Hello this is an debug message");
     log.info("Hello this is an info message");
  }
}
如果您的“简单Java类”恰好位于Java EE容器中(如Tomcat、JBoss或WebSphere中的.jsp或servlet),那么您需要做的就是:

1) 导入org.apache.log4j.Logger

2) 在类中声明静态实例:

 EXAMPLE:  `static Logger logger = Logger.getLogger ("MyApp");`
3) 使用你的记录器

 EXAMPLE: `logger.info ("something interesting happened");`
4) 如果您在类路径中包含log4j.java和您自己的log4j.properties,那么您不需要做任何其他事情

以下是有关在Tomcat或应用服务器上使用log4j的更多信息:

下面是一个非常简单的“做日志记录”示例程序,来自上面的tutorialspoint.com链接:

import org.apache.log4j.Logger;

import java.io.*;
import java.sql.SQLException;
import java.util.*;

public class log4jExample{
  /* Get actual class name to be printed on */
  static Logger log = Logger.getLogger(
                      log4jExample.class.getName());

  public static void main(String[] args)
                throws IOException,SQLException{

     log.debug("Hello this is an debug message");
     log.info("Hello this is an info message");
  }
}

步骤1:在项目中导入log4jjar文件

步骤2:-创建一个日志java文件

public Log(Class className) {
        logger = Logger.getLogger(className.getClass());
        logger.getClass();
        final String LOG_PROPERTIES_FILE_NAME = "log4j.properties";
        props = loadLogFile(LOG_PROPERTIES_FILE_NAME, className);
        //props =getPropsFile(LOG_PROPERTIES_FILE_NAME, className);
        PropertyConfigurator.configure(props);
    }

public static Properties loadLogFile(String propertyFile, Class className) {
        //String filePath="";
        try {
            Properties ps = null;

            ResourceBundle bundle = ResourceBundle
                    .getBundle("resource.DbProperties");
            String logPath = bundle.getString("logs.path");
            File filePath = new File(logPath);
            if (!filePath.exists()) {
                filePath.mkdirs();
            }
            props.clone();
            props = getPropsFile(propertyFile, className);
            props.setProperty("info_file_path", filePath.toString());
            //  PropertyConfigurator.configure(props);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return props;
    }


public void info(String message) {
    logger.info(message);
}

public void warn(String message) {
    logger.warn(message);
}

public void error(String message) {
    logger.error(message);
}

public void fatal(String message) {
    logger.fatal(message);
}

public void printStackTrace(Throwable ex) {
    StringWriter sw = new StringWriter();
    ex.printStackTrace(new PrintWriter(sw));
    logger.error("\n" + sw.toString());
}
log4j.属性

log4j.rootCategory=LOGFILE
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=${info_file_path}\\info_Pension_application.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.Threshold=INFO
log4j.appender.LOGFILE.Threshold=DEBUG
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

步骤1:在项目中导入log4jjar文件

步骤2:-创建一个日志java文件

public Log(Class className) {
        logger = Logger.getLogger(className.getClass());
        logger.getClass();
        final String LOG_PROPERTIES_FILE_NAME = "log4j.properties";
        props = loadLogFile(LOG_PROPERTIES_FILE_NAME, className);
        //props =getPropsFile(LOG_PROPERTIES_FILE_NAME, className);
        PropertyConfigurator.configure(props);
    }

public static Properties loadLogFile(String propertyFile, Class className) {
        //String filePath="";
        try {
            Properties ps = null;

            ResourceBundle bundle = ResourceBundle
                    .getBundle("resource.DbProperties");
            String logPath = bundle.getString("logs.path");
            File filePath = new File(logPath);
            if (!filePath.exists()) {
                filePath.mkdirs();
            }
            props.clone();
            props = getPropsFile(propertyFile, className);
            props.setProperty("info_file_path", filePath.toString());
            //  PropertyConfigurator.configure(props);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return props;
    }


public void info(String message) {
    logger.info(message);
}

public void warn(String message) {
    logger.warn(message);
}

public void error(String message) {
    logger.error(message);
}

public void fatal(String message) {
    logger.fatal(message);
}

public void printStackTrace(Throwable ex) {
    StringWriter sw = new StringWriter();
    ex.printStackTrace(new PrintWriter(sw));
    logger.error("\n" + sw.toString());
}
log4j.属性

log4j.rootCategory=LOGFILE
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=${info_file_path}\\info_Pension_application.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.Threshold=INFO
log4j.appender.LOGFILE.Threshold=DEBUG
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n