log4j.properties文件:
#收发服务器错误
#模块输出日志等级
log4j.logger.rsServer_ERROR=ERROR ,rsServer_ERROR
#表示每天生成一个日志文件 每月生成需要依赖它的配置
log4j.appender.rsServer_ERROR=org.apache.log4j.DailyRollingFileAppender
#日志存放路径(logs)及名称(rsServerError)
log4j.appender.rsServer_ERROR.File=../logs/rsServerError
#指定每月生成日志文件
log4j.appender.rsServer_ERROR.DatePattern = '('yyyy-MM').log'
#指定该日志等级
log4j.appender.rsServer_ERROR.Threshold=ERROR
#制定日志信息为追加 不是覆盖
log4j.appender.rsServer_ERROR.Append=true
#表示日志布局为*布局,可以指定日志信息格式
log4j.appender.rsServer_ERROR.layout=org.apache.log4j.PatternLayout
#指定日志信息格式为 年-月-日 时:分:秒 :日志信息
log4j.appender.rsServer_ERROR.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}:%m%n
#收发服务器警告
log4j.logger.rsServer_WARN=WARN ,rsServer_WARN
log4j.appender.rsServer_WARN=org.apache.log4j.DailyRollingFileAppender
log4j.appender.rsServer_WARN.File=e:/logs/rsServerWarn
log4j.appender.rsServer_WARN.DatePattern = '('yyyy-MM').log'
log4j.appender.rsServer_WARN.Threshold=WARN
log4j.appender.rsServer_WARN.Append=true
log4j.appender.rsServer_WARN.layout=org.apache.log4j.PatternLayout
log4j.appender.rsServer_WARN.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}:%m%n
获取log工具类
package bcommon;
//第三方(公共)
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
/**
* 类说明:日志工具类<br>
*/
public class LogUtil {
/**
* 警告日志方法
* @param warningMsg警告信息
* @param modelName 模块名称
* @param className 类名
* @param methodName方法名
*/
public void recordWarningLogs(String warningMsg,String modelName,String className,String methodName){
PropertyConfigurator.configure(getClass().getResource("/").getPath()+"bcommon/log4j.properties");
Logger logger = Logger.getLogger(modelName.trim()+"_WARN");
logger.warn(warningMsg+"类名:"+className+" 方法名:"+methodName);
}
/**
* 错误信息方法
* @param errorMsg 错误信息
* @param modelName 模块名称
* @param className 类名
* @param methodName 方法名
*/
public void recordErrorLogs(String errorMsg,String modelName,String className,String methodName){
PropertyConfigurator.configure(getClass().getResource("/").getPath()+"bcommon/log4j.properties");
Logger logger = Logger.getLogger(modelName.trim()+"_ERROR");
logger.error(errorMsg+"类名:"+className+" 方法名:"+methodName);
}
}
Test.java
private void test(){
try {
System.out.println(5/0);
} catch (Exception e) {
System.out.println("警告信息");
LogUtil logUtil=new LogUtil();
logUtil.recordWarningLogs("警告信息", "rsServer", "Test2Ser", "doGet");
}
}