Ensure Error caught in InitExecutor and do not exit when error occurs in LogBase (#613)
to avoid affecting normal logic of users Signed-off-by: Eric Zhao <sczyh16@gmail.com>
This commit is contained in:
parent
7f29773a34
commit
d5204bb6a4
|
|
@ -50,16 +50,15 @@ public final class InitExecutor {
|
||||||
}
|
}
|
||||||
for (OrderWrapper w : initList) {
|
for (OrderWrapper w : initList) {
|
||||||
w.func.init();
|
w.func.init();
|
||||||
RecordLog.info(String.format("[InitExecutor] Initialized: %s with order %d",
|
RecordLog.info(String.format("[InitExecutor] Executing %s with order %d",
|
||||||
w.func.getClass().getCanonicalName(), w.order));
|
w.func.getClass().getCanonicalName(), w.order));
|
||||||
}
|
}
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
RecordLog.warn("[InitExecutor] Init failed", ex);
|
RecordLog.warn("[InitExecutor] WARN: Initialization failed", ex);
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
} catch (Error error) {
|
} catch (Error error) {
|
||||||
RecordLog.warn("[InitExecutor] Init failed with fatal error", error);
|
RecordLog.warn("[InitExecutor] ERROR: Initialization failed with fatal error", error);
|
||||||
error.printStackTrace();
|
error.printStackTrace();
|
||||||
throw error;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -32,11 +32,15 @@ import com.alibaba.csp.sentinel.util.PidUtil;
|
||||||
* @author leyou
|
* @author leyou
|
||||||
*/
|
*/
|
||||||
public class LogBase {
|
public class LogBase {
|
||||||
|
|
||||||
public static final String LOG_CHARSET = "utf-8";
|
public static final String LOG_CHARSET = "utf-8";
|
||||||
|
|
||||||
private static final String DIR_NAME = "logs" + File.separator + "csp";
|
private static final String DIR_NAME = "logs" + File.separator + "csp";
|
||||||
private static final String USER_HOME = "user.home";
|
private static final String USER_HOME = "user.home";
|
||||||
|
|
||||||
public static final String LOG_DIR = "csp.sentinel.log.dir";
|
public static final String LOG_DIR = "csp.sentinel.log.dir";
|
||||||
public static final String LOG_NAME_USE_PID = "csp.sentinel.log.use.pid";
|
public static final String LOG_NAME_USE_PID = "csp.sentinel.log.use.pid";
|
||||||
|
|
||||||
private static boolean logNameUsePid = false;
|
private static boolean logNameUsePid = false;
|
||||||
|
|
||||||
private static String logBaseDir;
|
private static String logBaseDir;
|
||||||
|
|
@ -45,8 +49,8 @@ public class LogBase {
|
||||||
try {
|
try {
|
||||||
init();
|
init();
|
||||||
} catch (Throwable t) {
|
} catch (Throwable t) {
|
||||||
|
System.err.println("[LogBase] FATAL ERROR when initializing log class");
|
||||||
t.printStackTrace();
|
t.printStackTrace();
|
||||||
System.exit(-1);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue