Log4j

#主程序
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

public class Log {
    static Logger logger = Logger.getLogger(Log.class);
    public static void main(String[] args) throws InterruptedException {
        PropertyConfigurator.configure("C:\\Users\\Administrator\\ThinkInJava\\src\\cn\\gongel\\log4j.properties");
        for (int i = 0; i < 1000; i++) {
            logger.trace("跟踪信息");
            logger.debug("调试信息");
            logger.info("输出信息");
            logger.warn("警告信息");
            logger.error("错误信息");
            logger.fatal("致命信息");
        }
    }
}
#log4j.properties,放在src下面

#设置日志输出的等级为debug,低于debug就不会输出了
#设置日志输出到两种地方,分别叫做 stdout(控制台)和 R(文件)
log4j.rootLogger=trace, stdout, R

#控制台
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#输出格式
#log4j日志输出格式一览:
#%c 输出日志信息所属的类的全名
#%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28
#%f 输出日志信息所属的类的类名
#%l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行
#%m 输出代码中指定的信息,如log(message)中的message
#%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
#%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
#%r 输出自应用启动到输出该日志信息所耗费的毫秒数
#%t 输出产生该日志事件的线程名
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

#文件(滚动方式)
log4j.appender.R=org.apache.log4j.RollingFileAppender
#文件名
log4j.appender.R.File=example.log
log4j.appender.R.MaxFileSize=100KB
#最多滚动五个文件
log4j.appender.R.MaxBackupIndex=5
#格式控制
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%5p %t %c - %m%n

# 可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如:
# %20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。
# %-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,”-”号指定左对齐。
# %.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。
# %20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边将多出的字符截掉。

ref:http://how2j.cn/k/log4j/log4j-tutorial/1081.html

https://blog.csdn.net/langzi7758521/article/details/51733891

0