logYF.java

简介: logYF.java

compile('log4j:log4j:1.2.17')

 

logYF.java

package com.demo.test;
import org.apache.log4j.Logger;
public class logYF {
    private static Logger logger = Logger.getLogger(logYF.class);
    public static void info(Object log){
        logger.info(appendLogStr(log));
    }
    public static void error(Object log){
        logger.error(appendLogStr(log));
    }
    public static void debug(Object log){
        logger.debug(appendLogStr(log));
    }
    private static String appendLogStr(Object str) {
        StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
        StackTraceElement log = stackTrace[1];
        StringBuffer  tag = new StringBuffer();
        tag.append("[");
        for (int i = 1; i < stackTrace.length; i++) {
            StackTraceElement e = stackTrace[i];
            if (!e.getClassName().equals(log.getClassName())) {
                tag.append(e.getClassName()).append(".").append(e.getMethodName()).append("-").append(e.getLineNumber());
                break;
            }
        }
        tag.append("] ").append(str.toString());
        return tag.toString();
    }
}

log4j.properties

### 设置###
log4j.rootLogger = debug,stdout,D,E
### 输出信息到控制抬 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%p] %d{yyyy-MM-dd HH:mm:ss} %m%n
### 输出DEBUG 级别以上的日志到=log.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = C://Data/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG 
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = [%p] %d{yyyy-MM-dd HH:mm:ss} %m%n
### 输出ERROR 级别以上的日志到=error.log ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =C://Data/error.log 
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR 
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = [%p] %d{yyyy-MM-dd HH:mm:ss} %m%n

输出结果示例:

[INFO] 2019-06-14 17:28:57 [com.demo.test.TestLog.main-7] aaaaaaaaaaaaaaa
[INFO] 2019-06-14 17:28:57 [com.demo.test.TestLog.TestSSS-13] aaaaaaaaaaaaaaa
[ERROR] 2019-06-14 17:28:57 [com.demo.test.TestLog.TestSSS-14] ssssss
[DEBUG] 2019-06-14 17:28:57 [com.demo.test.TestLog.TestSSS-15] debug
相关文章
|
2月前
|
存储 安全 Java
Java“ArrayStoreException”解决
Java中的ArrayStoreException是在尝试将错误类型的对象存储到泛型数组时抛出的运行时异常。本文介绍其原因、常见场景及解决方法,帮助开发者避免此类问题。
90 1
|
Java 程序员
从0开始学Java:Java基础语法(1)
从0开始学Java:Java基础语法(1)
|
Java 大数据 编译器
初识java
初识java
66 0
|
人工智能 监控 NoSQL
JAVA
简要讲述Java的特性以及相关的Java调优工具
JAVA
|
分布式计算 Java API
赶快看看Java11,不然你就out了!
由于直接从Java8跨越到Java11,所以特性介绍就把Java9-Java11的部分特性一起介绍一下。想要了解Java8特性的朋友可以去我的博客找「Java8系列」。
667 3
赶快看看Java11,不然你就out了!
|
存储 缓存 运维
JAVA问答12
JAVA问答12
137 0
|
存储 固态存储 Java
JAVA问答13
JAVA问答13
134 0
|
Oracle Java 关系型数据库
什么是java
什么是java
122 0
|
Java
Java一些常见的坑
总是觉得自己Java基础还是不行,需要恶补。今天偶然mark了一本《Java解惑》,其中以端程序的方式罗列了95个即常见又不常见的xian(坑)jing(儿),拿来瞻仰一下。
98 0