diff --git a/src/com/engine/salary/elog/async/LoggerMessageListener.java b/src/com/engine/salary/elog/async/LoggerMessageListener.java index 2bf5dc9..42047c3 100644 --- a/src/com/engine/salary/elog/async/LoggerMessageListener.java +++ b/src/com/engine/salary/elog/async/LoggerMessageListener.java @@ -7,24 +7,19 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** - * @ClassName: LoggerMessageListener - * @Description 本地日志存储消息队列监听类 - * @Author tanghj - * @Date 2021/2/10 14:18 - */ + * 本地日志存储消息队列监听类 + *

Copyright: Copyright (c) 2024

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ public class LoggerMessageListener { - - private final Logger logger = LoggerFactory.getLogger(getClass()); - LocalElogService localElogService = new LocalElogService(); + ELogTableChecker checker = new ELogTableChecker(); - public String receiveold(LoggerContext messageBean) { - - new ELogTableChecker().check(messageBean); + public void receiveold(LoggerContext messageBean) { + checker.check(messageBean); localElogService.insertLocalElog(messageBean); - - return ""; } - - } diff --git a/src/com/engine/salary/elog/config/ELogTableChecker.java b/src/com/engine/salary/elog/config/ELogTableChecker.java index 3c4b5b9..00c1cae 100644 --- a/src/com/engine/salary/elog/config/ELogTableChecker.java +++ b/src/com/engine/salary/elog/config/ELogTableChecker.java @@ -15,16 +15,18 @@ public class ELogTableChecker { } public void check(LoggerContext loggerContext) { - String module = loggerContext.getModuleName(); - String function = loggerContext.getFunctionName(); - String mainTable = String.format("%s_%slogs", module, function); - Long v = eLogCache.getVersion(mainTable); - boolean noTable = v == null; - if (noTable) { - this.initTable(mainTable); - v = version; - } else { - this.checkVersion(mainTable, v); + synchronized (this){ + String module = loggerContext.getModuleName(); + String function = loggerContext.getFunctionName(); + String mainTable = String.format("%s_%slogs", module, function); + Long v = eLogCache.getVersion(mainTable); + boolean noTable = v == null; + if (noTable) { + this.initTable(mainTable); + v = version; + } else { + this.checkVersion(mainTable, v); + } } } diff --git a/src/com/engine/salary/elog/service/impl/LocalElogService.java b/src/com/engine/salary/elog/service/impl/LocalElogService.java index 0c6fb5c..c33b523 100644 --- a/src/com/engine/salary/elog/service/impl/LocalElogService.java +++ b/src/com/engine/salary/elog/service/impl/LocalElogService.java @@ -51,8 +51,6 @@ public class LocalElogService implements ILocalElogService { */ @Override public int insertLocalElog(LoggerContext context) { -// logger.error("接收到的数据,context:{}",JSONObject.toJSONString(context)); -// logger.info("接收到数据的时间:log_date:{}",context.getDate()); if (StringUtils.isEmpty(context.getUuid())) { context.setUuid(UUID.randomUUID().toString().replace("-", "")); } diff --git a/src/com/engine/salary/elog/util/LoggerTemplate.java b/src/com/engine/salary/elog/util/LoggerTemplate.java index 2048174..9bbc2b2 100644 --- a/src/com/engine/salary/elog/util/LoggerTemplate.java +++ b/src/com/engine/salary/elog/util/LoggerTemplate.java @@ -84,17 +84,16 @@ public class LoggerTemplate { * @param isLocal true 存储本地, false不存储本地 */ public void write(LoggerContext context, boolean isLocal) { - String elogLocalQueue = ELOG + this.applicationName; + String elogLocalQueue = ELOG + applicationName; if (StringUtils.isEmpty(this.localQueue)) { - this.localQueue = (StringUtils.isNotEmpty(this.moduleName) ? this.moduleName : elogLocalQueue) + "LocalQueue" + this.publishkitGroup; + this.localQueue = (StringUtils.isNotEmpty(this.moduleName) ? this.moduleName : elogLocalQueue) + "LocalQueue" + publishkitGroup; } try { handleContext(context); + loggerMessageListener.receiveold(context); } catch (Exception e) { - logger.error("handleContext方法异常!{}", e.getMessage(), e); + logger.error("日志写入方法异常!{}", e.getMessage(), e); } - loggerMessageListener.receiveold(context); - } // public void writeLocal(LoggerContext context){ diff --git a/src/com/engine/salary/elog/util/LoggerTemplateBuilder.java b/src/com/engine/salary/elog/util/LoggerTemplateBuilder.java index 351a877..e78c7e9 100644 --- a/src/com/engine/salary/elog/util/LoggerTemplateBuilder.java +++ b/src/com/engine/salary/elog/util/LoggerTemplateBuilder.java @@ -17,7 +17,6 @@ public class LoggerTemplateBuilder { LoggerTemplate loggerTemplate = new LoggerTemplate(); loggerTemplate.setFunction(function); loggerTemplate.setModule(module); - return loggerTemplate; } }