return null;
}
+
+ private static final Object mLock = new Object();
+
/**
* 初始化与配置Logger Log4j
* 日志信息格式中符号所代表的含义
* (4)%20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边交远销出的字符截掉。
*/
private static void initConfig() {
+ //用double check 提高效率
if (!isInitConfig) {
-
- LogConfigurator logConfigurator = new LogConfigurator();
-
- String filename = StorageUtils.getExternalStorageLogDir() + File.separator + "log.txt";
- logConfigurator.setFileName(filename); // 日志存储路径,如果该路径没有会自动创建文件
- logConfigurator.setRootLevel(Level.ALL);
- logConfigurator.setLevel("log", Level.ALL);
+ return;
+ }
+ synchronized (mLock) {
+ if (!isInitConfig) {
+ isInitConfig = true;
+ LogConfigurator logConfigurator = new LogConfigurator();
+
+ String filename = StorageUtils.getExternalStorageLogDir() + File.separator + "log.txt";
+ logConfigurator.setFileName(filename); // 日志存储路径,如果该路径没有会自动创建文件
+ logConfigurator.setRootLevel(Level.ALL);
+ logConfigurator.setLevel("log", Level.ALL);
// logConfigurator.setFilePattern("%d %-5p [%c{2}]-[%L] %m%n");// 设置文件输出模式
- logConfigurator.setFilePattern("%d %m%n ");// 设置文件输出模式
+ logConfigurator.setFilePattern("%d %m%n ");// 设置文件输出模式
// 02-29 16:28:38.195 4629-4658/com.enqualcomm.support E/com.enqualcomm.support.utils.ICLogger:
- logConfigurator.setMaxBackupSize(2); // 设置最大备份数量
- logConfigurator.setMaxFileSize(1024 * 1024 * 20);// 设置最大文件大小 20MB
- logConfigurator.setImmediateFlush(true);// 设置是否立即刷新
- logConfigurator.setUseFileAppender(true); // 设置用户文件输出器
- logConfigurator.setInternalDebugging(false); //控制console是否输出
- logConfigurator.setUseLogCatAppender(true);
- logConfigurator.setLogCatPattern("%m%n");
- logConfigurator.configure();// 设置提交
-
-
+ logConfigurator.setMaxBackupSize(2); // 设置最大备份数量
+ logConfigurator.setMaxFileSize(1024 * 1024 * 20);// 设置最大文件大小 20MB
+ logConfigurator.setImmediateFlush(true);// 设置是否立即刷新
+ logConfigurator.setUseFileAppender(true); // 设置用户文件输出器
+ logConfigurator.setInternalDebugging(false); //控制console是否输出
+ logConfigurator.setUseLogCatAppender(true);
+ logConfigurator.setLogCatPattern("%m%n");
+ logConfigurator.configure();// 设置提交
+ android.util.Log.d("CATCH", android.util.Log.getStackTraceString(new ThreadDeath()));
// String logfilelist[]={"Log","GPS","Nmea","APILog","alarmCycle","Battery","LBS"};
-
- //Log 和log目前是同一个配置
- Log = Logger.getLogger("log");
- Log.info("init Logger " + Log.getName());
+ //Log 和log目前是同一个配置
+ Log = Logger.getLogger("log");
+ Log.info("init Logger " + Log.getName());
// Log.addAppender( getRollingFileAppender("log","%d %m%n "));
// Log.info("init Logger "+Log.getName()+" "+((RollingFileAppender)Log.getAppender("log")).getFile());
- GPS = Logger.getLogger("GPS");
- GPS.addAppender(getRollingFileAppender("GPS", "%d %m%n "));
- GPS.info("init Logger " + GPS.getName() + " " + ((RollingFileAppender) GPS.getAppender("GPS")).getFile());
+ GPS = Logger.getLogger("GPS");
+ GPS.addAppender(getRollingFileAppender("GPS", "%d %m%n "));
+ GPS.info("init Logger " + GPS.getName() + " " + ((RollingFileAppender) GPS.getAppender("GPS")).getFile());
- Nmea = Logger.getLogger("Nmea");
- Nmea.addAppender(getRollingFileAppender("Nmea", "%m%n"));
- Nmea.info("init Logger " + Nmea.getName() + " " + ((RollingFileAppender) Nmea.getAppender("Nmea")).getFile());
+ Nmea = Logger.getLogger("Nmea");
+ Nmea.addAppender(getRollingFileAppender("Nmea", "%m%n"));
+ Nmea.info("init Logger " + Nmea.getName() + " " + ((RollingFileAppender) Nmea.getAppender("Nmea")).getFile());
- APILog = Logger.getLogger("APILog");
- APILog.addAppender(getRollingFileAppender("APILog", "%d %m%n "));
- APILog.info("init Logger " + APILog.getName() + " " + ((RollingFileAppender) APILog.getAppender("APILog")).getFile());
+ APILog = Logger.getLogger("APILog");
+ APILog.addAppender(getRollingFileAppender("APILog", "%d %m%n "));
+ APILog.info("init Logger " + APILog.getName() + " " + ((RollingFileAppender) APILog.getAppender("APILog")).getFile());
- alarmCycle = Logger.getLogger("alarmCycle");
- alarmCycle.addAppender(getRollingFileAppender("alarmCycle", "%d %m%n "));
- alarmCycle.info("init Logger " + alarmCycle.getName() + " " + ((RollingFileAppender) alarmCycle.getAppender("alarmCycle")).getFile());
+ alarmCycle = Logger.getLogger("alarmCycle");
+ alarmCycle.addAppender(getRollingFileAppender("alarmCycle", "%d %m%n "));
+ alarmCycle.info("init Logger " + alarmCycle.getName() + " " + ((RollingFileAppender) alarmCycle.getAppender("alarmCycle")).getFile());
- Battery = Logger.getLogger("Battery");
- Battery.addAppender(getRollingFileAppender("Battery", "%d %m%n "));
- Battery.info("init Logger " + Battery.getName() + " " + ((RollingFileAppender) Battery.getAppender("Battery")).getFile());
+ Battery = Logger.getLogger("Battery");
+ Battery.addAppender(getRollingFileAppender("Battery", "%d %m%n "));
+ Battery.info("init Logger " + Battery.getName() + " " + ((RollingFileAppender) Battery.getAppender("Battery")).getFile());
- LBS = Logger.getLogger("LBS");
- LBS.addAppender(getRollingFileAppender("LBS", "%d %m%n "));
- LBS.info("init Logger " + LBS.getName() + " " + ((RollingFileAppender) LBS.getAppender("LBS")).getFile());
- isInitConfig = true;
+ LBS = Logger.getLogger("LBS");
+ LBS.addAppender(getRollingFileAppender("LBS", "%d %m%n "));
+ LBS.info("init Logger " + LBS.getName() + " " + ((RollingFileAppender) LBS.getAppender("LBS")).getFile());
+ }
}
}