log4j.rootLogger=DEBUG,console,event,D
log4j.appender.console= org.apache.log4j.ConsoleAppender
log4j.appender.console.encoding= UTF-8
log4j.appender.console.Threshold = INFO
log4j.appender.console.Target= System.Out
log4j.appender.console.layout= org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [ %t:%l ] - [%5p] %m%n
### info ###
log4j.appender.event= org.apache.log4j.DailyRollingFileAppender
log4j.appender.event.encoding= UTF-8
log4j.appender.event.Threshold= INFO
#${LOG_HOME}/logs/${JAR_NAME}/info.log
log4j.appender.event.File= ${LOG_HOME}/logs/${JAR_NAME}/info.log
log4j.appender.event.DatePattern='.'yyyy-MM-dd'.txt'
log4j.appender.event.Append = true
log4j.appender.event.Threshold = INFO
log4j.appender.event.layout= org.apache.log4j.PatternLayout
log4j.appender.event.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [ %t ] - [%5p] %m%n
### Save error to another file ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ${LOG_HOME}/logs/${JAR_NAME}/error.log
log4j.appender.D.DatePattern='.'yyyy-MM-dd'.txt'
log4j.appender.D.Append = true
log4j.appender.D.Threshold = ERROR
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%l ] - [%5p] %m%n
### Save es info to another file ###
log4j.category.com.esb.job.summarize.ESTimer = DEBUG, ES
log4j.appender.ES = org.apache.log4j.RollingFileAppender
log4j.appender.ES.File = ${LOG_HOME}/logs/${JAR_NAME}/es.log
log4j.appender.ES.DatePattern='.'yyyy-MM-dd'.txt'
log4j.appender.ES.Append = true
log4j.appender.ES.Threshold = INFO
log4j.appender.ES.MaxFileSize = 50KB
log4j.appender.ES.layout = org.apache.log4j.PatternLayout
log4j.appender.ES.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} - [%5p] %m%n
Springboot 启动类设置了系统全局变量
@SpringBootApplication()
public class EsbConsole2SchedulerJobApplication {
public static void main(String[] args) {
String path = EsbConsole2SchedulerJobApplication.class.getProtectionDomain().getCodeSource().getLocation().getPath();
System.out.println("path ="+path);
String jarHome;
String jarFile;
if (path.contains(".jar")){
path = StringUtils.substringBefore(path,".jar");
jarFile = path;
path = StringUtils.substringBeforeLast(path,"/");
path = StringUtils.substringAfter(path, ":");
jarHome = path+"/";
jarFile = StringUtils.substringAfterLast(jarFile, "/");
}else{
path = StringUtils.substringBefore(path, "target");
jarHome = path;
jarFile = "ESB-SchedulerJob";
}
System.setProperty("LOG_HOME", jarHome);
System.setProperty("JAR_NAME", jarFile);
System.out.println("LOG_HOME ="+System.getProperty("LOG_HOME"));
System.out.println("JAR_NAME ="+System.getProperty("JAR_NAME"));
SpringApplication.run(EsbConsole2SchedulerJobApplication.class, args);
}
@Bean
public SessionFactory sessionFactory(HibernateEntityManagerFactory hemf){
return hemf.getSessionFactory();
}
}
log目录