diff --git a/src/main/java/com/uid2/operator/Main.java b/src/main/java/com/uid2/operator/Main.java index b540b4ee4..e8334e858 100644 --- a/src/main/java/com/uid2/operator/Main.java +++ b/src/main/java/com/uid2/operator/Main.java @@ -1,6 +1,5 @@ package com.uid2.operator; -import ch.qos.logback.classic.LoggerContext; import com.google.common.base.Strings; import com.uid2.enclave.IOperatorKeyRetriever; import com.uid2.operator.model.KeyManager; @@ -194,12 +193,23 @@ else if (!Utils.isProductionEnvironment()) { return; } + boolean errorQuit = false; + try { Main app = new Main(vertx, ar.result()); app.run(); } catch (Exception e) { LOGGER.error("Error: " + e.getMessage(), e); - ((LoggerContext)org.slf4j.LoggerFactory.getILoggerFactory()).stop(); // flush logs before shutdown + errorQuit = true; + } + + if(errorQuit){ + // allow log to be flushed before quit app. + try { + Thread.sleep(1000); + } catch (Exception e) { + // swallow + } vertx.close(); System.exit(1); }