diff --git a/client/src/main/java/com/jd/platform/hotkey/client/ClientStarter.java b/client/src/main/java/com/jd/platform/hotkey/client/ClientStarter.java index 1102d8a19acecf4db3955dd2a5204aa7004f83a1..09f14c25b976c0a14e94e1ec961c6e49e6e4911f 100644 --- a/client/src/main/java/com/jd/platform/hotkey/client/ClientStarter.java +++ b/client/src/main/java/com/jd/platform/hotkey/client/ClientStarter.java @@ -102,14 +102,14 @@ public class ClientStarter { //开启worker重连器 WorkerRetryConnector.retryConnectWorkers(); - registEventBus(); + registerEventBus(); EtcdStarter starter = new EtcdStarter(); //与etcd相关的监听都开启 starter.start(); } - private void registEventBus() { + private void registerEventBus() { //netty连接器会关注WorkerInfoChangeEvent事件 EventBusCenter.register(new WorkerChangeSubscriber()); //热key探测回调关注热key事件 diff --git a/client/src/main/java/com/jd/platform/hotkey/client/etcd/EtcdStarter.java b/client/src/main/java/com/jd/platform/hotkey/client/etcd/EtcdStarter.java index ee7d07bb42efbb59d24452ec3286a35de92f87a1..4ff90c5efac1c306abaa591d4cebffaab234f976 100644 --- a/client/src/main/java/com/jd/platform/hotkey/client/etcd/EtcdStarter.java +++ b/client/src/main/java/com/jd/platform/hotkey/client/etcd/EtcdStarter.java @@ -19,7 +19,6 @@ import com.jd.platform.hotkey.common.rule.KeyRule; import com.jd.platform.hotkey.common.tool.FastJsonUtils; import io.grpc.StatusRuntimeException; import io.netty.util.internal.StringUtil; - import java.util.ArrayList; import java.util.List; import java.util.concurrent.CompletableFuture; @@ -77,7 +76,7 @@ public class EtcdStarter { } } catch (StatusRuntimeException ex) { //etcd连不上 - JdLogger.error(getClass(), "etcd connected fail. Check the etcd address!!!"); + JdLogger.error(getClass(), "etcd connected fail. Check the etcd address!!!", ex); } } @@ -169,7 +168,7 @@ public class EtcdStarter { notifyWorkerChange(addresses); } catch (StatusRuntimeException ex) { //etcd连不上 - JdLogger.error(getClass(), "etcd connected fail. Check the etcd address!!!"); + JdLogger.error(getClass(), "etcd connected fail. Check the etcd address!!!", ex); } } @@ -223,12 +222,12 @@ public class EtcdStarter { EventBusCenter.getInstance().post(new ReceiveNewKeyEvent(model)); } } catch (Exception e) { - JdLogger.error(getClass(), "new key err :" + keyValue); + JdLogger.error(getClass(), "new key err :" + keyValue, e); } } } catch (Exception e) { - JdLogger.error(getClass(), "watch err"); + JdLogger.error(getClass(), "watch err", e); } }); @@ -251,24 +250,22 @@ public class EtcdStarter { IConfigCenter configCenter = EtcdConfigFactory.configCenter(); try { List ruleList = new ArrayList<>(); - //从etcd获取自己的rule String rules = configCenter.get(ConfigConstant.rulePath + Context.APP_NAME); + if (StringUtil.isNullOrEmpty(rules)) { JdLogger.warn(getClass(), "rule is empty"); - //会清空本地缓存队列 - notifyRuleChange(ruleList); - return true; + } else { + ruleList = FastJsonUtils.toList(rules, KeyRule.class); } - ruleList = FastJsonUtils.toList(rules, KeyRule.class); notifyRuleChange(ruleList); return true; } catch (StatusRuntimeException ex) { //etcd连不上 - JdLogger.error(getClass(), "etcd connected fail. Check the etcd address!!!"); + JdLogger.error(getClass(), "etcd connected fail. Check the etcd address!!!", ex); return false; } catch (Exception e) { - JdLogger.error(getClass(), "fetch rule failure, please check the rule info in etcd"); + JdLogger.error(getClass(), "fetch rule failure, please check the rule info in etcd", e); return true; } @@ -294,10 +291,8 @@ public class EtcdStarter { fetchRuleFromEtcd(); } } catch (Exception e) { - JdLogger.error(getClass(), "watch err"); + JdLogger.error(getClass(), "watch err", e); } - - }); } diff --git a/client/src/main/java/com/jd/platform/hotkey/client/log/DefaultLogger.java b/client/src/main/java/com/jd/platform/hotkey/client/log/DefaultLogger.java index e3465e54268ec787450042f9d8bca7a8f02fa4b9..bd48be8637a6d529ad5c06551873ff810c5b4c21 100644 --- a/client/src/main/java/com/jd/platform/hotkey/client/log/DefaultLogger.java +++ b/client/src/main/java/com/jd/platform/hotkey/client/log/DefaultLogger.java @@ -8,23 +8,29 @@ import org.slf4j.LoggerFactory; * @date 2020-04-21 */ public class DefaultLogger implements HotKeyLogger { + + @Override + public void debug(Class loggerClass, String info) { + LoggerFactory.getLogger(loggerClass).debug(info); + } + @Override - public void debug(Class className, String info) { - LoggerFactory.getLogger(className).debug(info); + public void info(Class loggerClass, String info) { + LoggerFactory.getLogger(loggerClass).info(info); } @Override - public void info(Class className, String info) { - LoggerFactory.getLogger(className).info(info); + public void warn(Class loggerClass, String info) { + LoggerFactory.getLogger(loggerClass).warn(info); } @Override - public void error(Class className, String info) { - LoggerFactory.getLogger(className).error(info); + public void error(Class loggerClass, String info) { + LoggerFactory.getLogger(loggerClass).error(info); } @Override - public void warn(Class className, String info) { - LoggerFactory.getLogger(className).warn(info); + public void error(Class loggerClass, String message, Throwable cause) { + LoggerFactory.getLogger(loggerClass).error(message, cause); } } diff --git a/client/src/main/java/com/jd/platform/hotkey/client/log/HotKeyLogger.java b/client/src/main/java/com/jd/platform/hotkey/client/log/HotKeyLogger.java index 39c0c412e3e887532e21ed966bcb1eefb45a19d0..eab344f0281c8674afd155a3d6cd95f72b7f2081 100644 --- a/client/src/main/java/com/jd/platform/hotkey/client/log/HotKeyLogger.java +++ b/client/src/main/java/com/jd/platform/hotkey/client/log/HotKeyLogger.java @@ -6,11 +6,14 @@ package com.jd.platform.hotkey.client.log; * @date 2020-04-21 */ public interface HotKeyLogger { - void debug(Class className, String info); - void info(Class className, String info); + void debug(Class loggerClass, String info); + + void info(Class loggerClass, String info); + + void warn(Class loggerClass, String info); void error(Class className, String info); - void warn(Class className, String info); + void error(Class loggerClass, String message, Throwable cause); } diff --git a/client/src/main/java/com/jd/platform/hotkey/client/log/JdLogger.java b/client/src/main/java/com/jd/platform/hotkey/client/log/JdLogger.java index 4db53582f80b536ee6ab2ba843d5acdc99c4c028..97e3362180e33edc04b0c72b25a7d22945da5561 100644 --- a/client/src/main/java/com/jd/platform/hotkey/client/log/JdLogger.java +++ b/client/src/main/java/com/jd/platform/hotkey/client/log/JdLogger.java @@ -5,6 +5,7 @@ package com.jd.platform.hotkey.client.log; * @version 1.0 */ public class JdLogger { + private static HotKeyLogger logger = new DefaultLogger(); public static void setLogger(HotKeyLogger log) { @@ -13,20 +14,23 @@ public class JdLogger { } } - public static void debug(Class className, String info) { - logger.debug(className, info); + public static void debug(Class loggerClass, String info) { + logger.debug(loggerClass, info); } - public static void info(Class className, String info) { - logger.info(className, info); + public static void info(Class loggerClass, String info) { + logger.info(loggerClass, info); } - public static void warn(Class className, String info) { - logger.warn(className, info); + public static void warn(Class loggerClass, String info) { + logger.warn(loggerClass, info); } - public static void error(Class className, String info) { - logger.error(className, info); + public static void error(Class loggerClass, String info) { + logger.error(loggerClass, info); } + public static void error(Class loggerClass, String message, Throwable cause) { + logger.error(loggerClass, message, cause); + } }