钱涛 1 year ago
parent 747fd9edb8
commit c9c2315d51

@ -7,24 +7,19 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @ClassName: LoggerMessageListener
* @Description
* @Author tanghj
* @Date 2021/2/10 14:18
*/
*
* <p>Copyright: Copyright (c) 2024</p>
* <p>Company: </p>
*
* @author qiantao
* @version 1.0
**/
public class LoggerMessageListener {
private final Logger logger = LoggerFactory.getLogger(getClass());
LocalElogService localElogService = new LocalElogService();
ELogTableChecker checker = new ELogTableChecker();
public <T> String receiveold(LoggerContext messageBean) {
new ELogTableChecker().check(messageBean);
public <T> void receiveold(LoggerContext messageBean) {
checker.check(messageBean);
localElogService.insertLocalElog(messageBean);
return "";
}
}

@ -15,16 +15,18 @@ public class ELogTableChecker {
}
public <T> void check(LoggerContext<T> 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);
}
}
}

@ -51,8 +51,6 @@ public class LocalElogService implements ILocalElogService {
*/
@Override
public <T> int insertLocalElog(LoggerContext<T> context) {
// logger.error("接收到的数据context:{}",JSONObject.toJSONString(context));
// logger.info("接收到数据的时间log_date:{}",context.getDate());
if (StringUtils.isEmpty(context.getUuid())) {
context.setUuid(UUID.randomUUID().toString().replace("-", ""));
}

@ -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){

@ -17,7 +17,6 @@ public class LoggerTemplateBuilder {
LoggerTemplate loggerTemplate = new LoggerTemplate();
loggerTemplate.setFunction(function);
loggerTemplate.setModule(module);
return loggerTemplate;
}
}

Loading…
Cancel
Save