Browse Source

v2

master
583641232@qq.com 8 months ago
parent
commit
0a735dfd65
  1. 2
      client/src/main/java/com/inscloudtech/alog/client/TracerClientStarter.java
  2. 29
      client/src/main/java/com/inscloudtech/alog/client/task/Monitor.java
  3. 2
      client/src/main/java/com/inscloudtech/alog/client/udp/UdpClient.java
  4. 2
      client/src/main/java/com/inscloudtech/alog/client/udp/UdpSender.java
  5. 24
      client/src/main/java/com/inscloudtech/alog/client/worker/WorkerInfoHolder.java
  6. 2
      clientlog4j/src/main/java/com/inscloudtech/jlog/clientlog4j/TracerLog4JAppender.java
  7. 2
      clientlog4j2/src/main/java/com/inscloudtech/jlog/clientlog4j2/TracerLog4J2Appender.java
  8. 2
      clientlogback/src/main/java/com/inscloudtech/jlog/clientlogback/TracerLogbackAppender.java
  9. 11
      common/src/main/java/com/inscloudtech/alog/common/handler/JcProperties.java
  10. 1
      common/src/main/java/com/inscloudtech/alog/common/utils/FastJsonUtils.java
  11. 4
      config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloConfigurator.java
  12. 2
      config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloConfiguratorProvider.java
  13. 2
      config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloConstant.java
  14. 2
      config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloListener.java
  15. 2
      config/config-apollo/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider
  16. 20
      config/config-core/src/main/java/com/inscloudtech/alog/core/ClientHandlerBuilder.java
  17. 2
      config/config-etcd/src/main/java/com/inscloudtech/jlog/etcd/EtcdConfigurationProvider.java
  18. 2
      config/config-etcd/src/main/java/com/inscloudtech/jlog/etcd/EtcdConfigurator.java
  19. 13
      config/config-etcd/src/main/java/com/inscloudtech/jlog/etcd/EtcdListener.java
  20. 2
      config/config-etcd/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider
  21. 4
      config/config-nacos/src/main/java/com/inscloudtech/alog/nacos/NacosConfigurator.java
  22. 2
      config/config-nacos/src/main/java/com/inscloudtech/alog/nacos/NacosConfiguratorProvider.java
  23. 2
      config/config-nacos/src/main/java/com/inscloudtech/alog/nacos/NacosListener.java
  24. 2
      config/config-nacos/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider
  25. 2
      config/config-zk/src/main/java/com/inscloudtech/jlog/zk/ZkConfigurator.java
  26. 2
      config/config-zk/src/main/java/com/inscloudtech/jlog/zk/ZkConfiguratorProvider.java
  27. 18
      config/config-zk/src/main/java/com/inscloudtech/jlog/zk/ZkListener.java
  28. 2
      config/config-zk/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider
  29. 8
      config/pom.xml
  30. 8
      example/src/main/java/com/inscloudtech/alog/clientdemo/aspectj/ActionLogAspect.java
  31. 2
      example/src/main/java/com/inscloudtech/alog/clientdemo/custom/Starter.java
  32. 24
      example/src/main/resources/application.yml

2
client/src/main/java/com/inscloudtech/alog/client/TracerClientStarter.java

@ -117,7 +117,7 @@ public class TracerClientStarter {
* 如果未赋值从配置器获取底层是Properties
*/
private void initJLogConfig(){
LOGGER.info("从主配置获取的tagConfig:{}", JSON.toJSONString(tagConfig));
// LOGGER.info("从主配置获取的tagConfig:{}", JSON.toJSONString(tagConfig));
Configurator configurator = ConfiguratorFactory.getInstance();
ClientHandlerBuilder.buildHandler(tagConfig, configurator);
}

29
client/src/main/java/com/inscloudtech/alog/client/task/Monitor.java

@ -34,17 +34,23 @@ public class Monitor {
* 每隔30秒拉取worker信息
*/
private void fetchWorkerInfo() {
ScheduledExecutorService scheduledExecutorService = Executors.newSingleThreadScheduledExecutor();
//开启拉取etcd的worker信息如果拉取失败则定时继续拉取
scheduledExecutorService.scheduleAtFixedRate(() -> {
LOGGER.info("trying to connect to config center and fetch worker info");
try {
fetch();
} catch (Exception e) {
e.printStackTrace();
}
// ScheduledExecutorService scheduledExecutorService = Executors.newSingleThreadScheduledExecutor();
// //开启拉取etcd的worker信息如果拉取失败则定时继续拉取
// scheduledExecutorService.scheduleAtFixedRate(() -> {
// LOGGER.info("trying to connect to config center and fetch worker info");
// try {
// fetch();
// } catch (Exception e) {
// e.printStackTrace();
// }
//
// }, 0, 30, TimeUnit.SECONDS);
}, 0, 30, TimeUnit.SECONDS);
try {
fetch();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
@ -56,7 +62,8 @@ public class Monitor {
List<String> addresses;
try {
//如果设置了机房属性则拉取同机房的worker如果同机房没worker则拉取所有
addresses = configurator.getList("workers");
addresses = configurator.getList("aLog-workers");
// addresses = configurator.getString("aLog-workers");
//全是空给个警告
if (addresses == null || addresses.isEmpty()) {
LOGGER.warn("very important warn !!! workers ip info is null!!!");

2
client/src/main/java/com/inscloudtech/alog/client/udp/UdpClient.java

@ -61,7 +61,7 @@ public class UdpClient {
});
//4.bind并返回一个channel
try {
Channel channel = bootstrap.bind(8887).sync().channel();
Channel channel = bootstrap.bind(39998).sync().channel();
Context.CHANNEL = channel;
//6.等待channel的close

2
client/src/main/java/com/inscloudtech/alog/client/udp/UdpSender.java

@ -187,7 +187,7 @@ public class UdpSender {
private static void send(TracerData tracerData) throws InterruptedException {
if(!ModeHolder.getSendMode().getUnicast()){
List<String>ips= WorkerInfoHolder.selectWorkers();
for(String ip:ips){
for(String ip : ips){
String[] ipPort = ip.split(Constant.SPLITER);
//发往worker的ip
InetSocketAddress remoteAddress = new InetSocketAddress(ipPort[0], Integer.valueOf(ipPort[1]));

24
client/src/main/java/com/inscloudtech/alog/client/worker/WorkerInfoHolder.java

@ -28,13 +28,13 @@ public class WorkerInfoHolder {
* 发消息到哪个worker在这里挑一个
*/
public static String chooseWorker() {
String workerIp = "127.0.0.1:39999";
int size = WORKER_HOLDER.size();
if (size == 0) {
return workerIp;
}
// String workerIp = "127.0.0.1:39999";
//
// int size = WORKER_HOLDER.size();
// if (size == 0) {
// return workerIp;
// }
String workerIp = "";
//按本机ip对worker数量进行hash
// int index = Math.abs(IpUtils.getIp().hashCode() % size);
if (index >= WORKER_HOLDER.size()) {
@ -53,11 +53,11 @@ public class WorkerInfoHolder {
//多播模式 返回所有注册在注册中心为Work的地址
public static List<String> selectWorkers() {
List<String> defaultIps = new ArrayList<>();
defaultIps.add("127.0.0.1:39999");
if (WORKER_HOLDER.isEmpty()) {
return defaultIps;
}
// List<String> defaultIps = new ArrayList<>();
// defaultIps.add("127.0.0.1:39999");
// if (WORKER_HOLDER.isEmpty()) {
// return defaultIps;
// }
return WORKER_HOLDER;
}

2
clientlog4j/src/main/java/com/jd/platform/jlog/clientlog4j/TracerLog4JAppender.java → clientlog4j/src/main/java/com/inscloudtech/jlog/clientlog4j/TracerLog4JAppender.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.clientlog4j;
package com.inscloudtech.jlog.clientlog4j;
import com.inscloudtech.alog.client.constant.TracerConstant;
import com.inscloudtech.alog.client.log.LogExceptionStackTrace;

2
clientlog4j2/src/main/java/com/jd/platform/jlog/clientlog4j2/TracerLog4J2Appender.java → clientlog4j2/src/main/java/com/inscloudtech/jlog/clientlog4j2/TracerLog4J2Appender.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.clientlog4j2;
package com.inscloudtech.jlog.clientlog4j2;
import com.inscloudtech.alog.client.log.LogExceptionStackTrace;
import com.inscloudtech.alog.client.tracerholder.TracerHolder;

2
clientlogback/src/main/java/com/jd/platform/jlog/clientlogback/TracerLogbackAppender.java → clientlogback/src/main/java/com/inscloudtech/jlog/clientlogback/TracerLogbackAppender.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.clientlogback;
package com.inscloudtech.jlog.clientlogback;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.ILoggingEvent;

11
common/src/main/java/com/inscloudtech/alog/common/handler/JcProperties.java

@ -1,10 +1,12 @@
package com.inscloudtech.alog.common.handler;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.inscloudtech.alog.common.utils.ConfigUtil;
import com.inscloudtech.alog.common.utils.StringUtil;
import com.inscloudtech.alog.common.utils.FastJsonUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
@ -41,6 +43,15 @@ public class JcProperties extends Properties {
}
String val = getString(key);
if(StringUtil.isNotEmpty(val)){
if (!JSONArray.isValid(val)) {
val = val.replaceAll("\\[", "").replaceAll("\\]", "");
String[] split = val.split(",");
List<String> result = new ArrayList<>();
for (int i=0; i < split.length; i++){
result.add(split[i]);
}
return result;
}
return FastJsonUtils.toList(val,String.class);
}
return null;

1
common/src/main/java/com/inscloudtech/alog/common/utils/FastJsonUtils.java

@ -1,6 +1,7 @@
package com.inscloudtech.alog.common.utils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.JSONLibDataFormatSerializer;
import com.alibaba.fastjson.serializer.SerializeConfig;

4
config/config-apollo/src/main/java/com/jd/platform/jlog/config/apollo/ApolloConfigurator.java → config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloConfigurator.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.config.apollo;
package com.inscloudtech.jlog.config.apollo;
import java.util.List;
import java.util.Properties;
@ -18,7 +18,7 @@ import org.slf4j.LoggerFactory;
import static com.ctrip.framework.apollo.core.ApolloClientSystemConsts.APP_ID;
import static com.inscloudtech.platform.jlog.config.apollo.ApolloConstant.*;
import static com.inscloudtech.jlog.config.apollo.ApolloConstant.*;
import static com.inscloudtech.alog.core.Constant.DEFAULT_NAMESPACE;

2
config/config-apollo/src/main/java/com/jd/platform/jlog/config/apollo/ApolloConfiguratorProvider.java → config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloConfiguratorProvider.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.config.apollo;
package com.inscloudtech.jlog.config.apollo;
import com.inscloudtech.alog.core.Configurator;
import com.inscloudtech.alog.core.ConfiguratorProvider;

2
config/config-apollo/src/main/java/com/jd/platform/jlog/config/apollo/ApolloConstant.java → config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloConstant.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.config.apollo;
package com.inscloudtech.jlog.config.apollo;
/**
* @author tangbohu

2
config/config-apollo/src/main/java/com/jd/platform/jlog/config/apollo/ApolloListener.java → config/config-apollo/src/main/java/com/inscloudtech/jlog/config/apollo/ApolloListener.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.config.apollo;
package com.inscloudtech.jlog.config.apollo;
import com.inscloudtech.alog.core.ClientHandlerBuilder;
import com.inscloudtech.alog.core.ConfigChangeEvent;

2
config/config-apollo/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider

@ -1 +1 @@
com.inscloudtech.platform.jlog.config.apollo.ApolloConfiguratorProvider
com.inscloudtech.jlog.config.apollo.ApolloConfiguratorProvider

20
config/config-core/src/main/java/com/inscloudtech/alog/core/ClientHandlerBuilder.java

@ -17,7 +17,10 @@ public class ClientHandlerBuilder {
tagConfig = buildTagConfigByConfigurator(configurator);
}
ExtractHandler.buildExtractHandler(tagConfig);
CompressHandler.buildCompressHandler(configurator.getLong("compress"), configurator.getLong("threshold"));
// compress: 68
// threshold: 10
CompressHandler.buildCompressHandler(68L, 10l);
// CompressHandler.buildCompressHandler(configurator.getLong("compress"), configurator.getLong("threshold"));
}
@ -34,6 +37,19 @@ public class ClientHandlerBuilder {
private static TagConfig buildTagConfigByConfigurator(Configurator configurator){
return configurator.getObject("tag-config", TagConfig.class);
TagConfig tagConfig = new TagConfig();
tagConfig.setDelimiter("|");
tagConfig.setExtract(41);
// tagConfig.setReqTags();
// tag-config:
// reqTags[0]: uid
// reqTags[1]: url
// logTags[0]: node
// logTags[1]: bizType
// respTags[0]: errno
// respTags[1]: msg
return tagConfig;
// return configurator.getObject("tag-config", TagConfig.class);
}
}

2
config/config-etcd/src/main/java/com/jd/platform/jlog/etcd/EtcdConfigurationProvider.java → config/config-etcd/src/main/java/com/inscloudtech/jlog/etcd/EtcdConfigurationProvider.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.etcd;
package com.inscloudtech.jlog.etcd;
import com.inscloudtech.alog.core.Configurator;

2
config/config-etcd/src/main/java/com/jd/platform/jlog/etcd/EtcdConfigurator.java → config/config-etcd/src/main/java/com/inscloudtech/jlog/etcd/EtcdConfigurator.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.etcd;
package com.inscloudtech.jlog.etcd;
import java.io.IOException;

13
config/config-etcd/src/main/java/com/jd/platform/jlog/etcd/EtcdListener.java → config/config-etcd/src/main/java/com/inscloudtech/jlog/etcd/EtcdListener.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.etcd;
package com.inscloudtech.jlog.etcd;
import com.google.protobuf.ByteString;
import com.ibm.etcd.api.Event;
@ -19,9 +19,6 @@ import java.io.StringReader;
import java.util.List;
import java.util.Set;
import static com.inscloudtech.platform.jlog.etcd.EtcdConfigurator.PROPERTIES;
import static com.inscloudtech.platform.jlog.etcd.EtcdConfigurator.PROPERTIES_PATH;
/**
* @author tangbohu
* @version 1.0.0
@ -65,7 +62,7 @@ public class EtcdListener implements ConfigChangeListener {
@Override
public void onChangeEvent(ConfigChangeEvent event) {
RangeResponse rangeResponse = EtcdConfigurator.client.getKvClient().get(ByteString.copyFromUtf8(PROPERTIES_PATH)).sync();
RangeResponse rangeResponse = EtcdConfigurator.client.getKvClient().get(ByteString.copyFromUtf8(EtcdConfigurator.PROPERTIES_PATH)).sync();
List<KeyValue> keyValues = rangeResponse.getKvsList();
if (CollectionUtil.isEmpty(keyValues)) {
return;
@ -79,13 +76,13 @@ public class EtcdListener implements ConfigChangeListener {
e.printStackTrace();
}
Set<String> diffKeys = CollectionUtil.diffKeys(props, PROPERTIES);
Set<String> diffKeys = CollectionUtil.diffKeys(props, EtcdConfigurator.PROPERTIES);
if(!diffKeys.isEmpty()){
PROPERTIES = props;
EtcdConfigurator.PROPERTIES = props;
for (String diffKey : diffKeys) {
LOGGER.warn("NACOS {} 配置变更 key={} 变更事件:{}", event.getKey(), diffKey,
String.valueOf(props.get(diffKey)),
String.valueOf(PROPERTIES.get(diffKey)));
String.valueOf(EtcdConfigurator.PROPERTIES.get(diffKey)));
}
ClientHandlerBuilder.refresh();
}

2
config/config-etcd/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider

@ -1 +1 @@
com.inscloudtech.platform.jlog.etcd.EtcdConfigurationProvider
com.inscloudtech.jlog.etcd.EtcdConfigurationProvider

4
config/config-nacos/src/main/java/com/jd/platform/jlog/nacos/NacosConfigurator.java → config/config-nacos/src/main/java/com/inscloudtech/alog/nacos/NacosConfigurator.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.nacos;
package com.inscloudtech.alog.nacos;
import java.io.*;
import java.util.*;
@ -17,6 +17,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static com.inscloudtech.alog.common.utils.ConfigUtil.formatConfigStr;
import static com.inscloudtech.alog.core.Constant.*;
/**

2
config/config-nacos/src/main/java/com/jd/platform/jlog/nacos/NacosConfiguratorProvider.java → config/config-nacos/src/main/java/com/inscloudtech/alog/nacos/NacosConfiguratorProvider.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.nacos;
package com.inscloudtech.alog.nacos;
import com.inscloudtech.alog.core.Configurator;

2
config/config-nacos/src/main/java/com/jd/platform/jlog/nacos/NacosListener.java → config/config-nacos/src/main/java/com/inscloudtech/alog/nacos/NacosListener.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.nacos;
package com.inscloudtech.alog.nacos;
import com.alibaba.nacos.api.config.listener.AbstractSharedListener;
import com.alibaba.nacos.api.naming.listener.Event;

2
config/config-nacos/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider

@ -1 +1 @@
com.inscloudtech.platform.jlog.nacos.NacosConfiguratorProvider
com.inscloudtech.alog.nacos.NacosConfiguratorProvider

2
config/config-zk/src/main/java/com/jd/platform/jlog/zk/ZkConfigurator.java → config/config-zk/src/main/java/com/inscloudtech/jlog/zk/ZkConfigurator.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.zk;
package com.inscloudtech.jlog.zk;
import java.io.ByteArrayInputStream;
import java.util.List;

2
config/config-zk/src/main/java/com/jd/platform/jlog/zk/ZkConfiguratorProvider.java → config/config-zk/src/main/java/com/inscloudtech/jlog/zk/ZkConfiguratorProvider.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.zk;
package com.inscloudtech.jlog.zk;
import com.inscloudtech.alog.core.Configurator;

18
config/config-zk/src/main/java/com/jd/platform/jlog/zk/ZkListener.java → config/config-zk/src/main/java/com/inscloudtech/jlog/zk/ZkListener.java

@ -1,4 +1,4 @@
package com.inscloudtech.platform.jlog.zk;
package com.inscloudtech.jlog.zk;
import com.alibaba.fastjson.JSON;
import com.inscloudtech.alog.common.utils.CollectionUtil;
@ -12,8 +12,6 @@ import org.slf4j.LoggerFactory;
import java.util.Properties;
import java.util.Set;
import static com.inscloudtech.platform.jlog.zk.ZkConfigurator.*;
/**
* @author didi
@ -28,7 +26,7 @@ public class ZkListener implements ConfigChangeListener {
public ZkListener(String path) {
this.path = path;
cache = new NodeCache(zkClient, path);
cache = new NodeCache(ZkConfigurator.zkClient, path);
try {
cache.start(true);
cache.getListenable().addListener(() -> onChangeEvent(null));
@ -41,23 +39,23 @@ public class ZkListener implements ConfigChangeListener {
@Override
public void onChangeEvent(ConfigChangeEvent event) {
LOGGER.info("ZK数据变更-当前监听器关注的path:{} PROPERTIES:{}", path, JSON.toJSONString(PROPERTIES));
LOGGER.info("ZK数据变更-当前监听器关注的path:{} PROPERTIES:{}", path, JSON.toJSONString(ZkConfigurator.PROPERTIES));
Properties props = new Properties();
props.putAll(PROPERTIES);
props.putAll(ZkConfigurator.PROPERTIES);
try {
LOGGER.debug("ZK数据变更,旧Properties:{}", JSON.toJSONString(props));
loadZkData();
LOGGER.debug("ZK数据变更,新Properties:{}", JSON.toJSONString(PROPERTIES));
ZkConfigurator.loadZkData();
LOGGER.debug("ZK数据变更,新Properties:{}", JSON.toJSONString(ZkConfigurator.PROPERTIES));
} catch (Exception e) {
e.printStackTrace();
}
Set<String> diffKeys = CollectionUtil.diffKeys(props, PROPERTIES);
Set<String> diffKeys = CollectionUtil.diffKeys(props, ZkConfigurator.PROPERTIES);
if(!diffKeys.isEmpty()){
for (String diffKey : diffKeys) {
LOGGER.warn("ZK {} 配置变更 key={} 变更事件:{}", path, diffKey,
new ConfigChangeEvent(diffKey,
String.valueOf(props.get(diffKey)),
String.valueOf(PROPERTIES.get(diffKey))));
String.valueOf(ZkConfigurator.PROPERTIES.get(diffKey))));
}
ClientHandlerBuilder.refresh();
}

2
config/config-zk/src/main/resources/META-INF/services/com.jd.platform.jlog.core.ConfiguratorProvider

@ -1 +1 @@
com.inscloudtech.platform.jlog.zk.ZkConfiguratorProvider
com.inscloudtech.jlog.zk.ZkConfiguratorProvider

8
config/pom.xml

@ -13,9 +13,9 @@
<name>alog-config</name>
<modules>
<module>config-core</module>
<module>config-etcd</module>
<module>config-apollo</module>
<module>config-nacos</module>
<module>config-zk</module>
<!-- <module>config-etcd</module>-->
<!-- <module>config-apollo</module>-->
<!-- <module>config-nacos</module>-->
<!-- <module>config-zk</module>-->
</modules>
</project>

8
example/src/main/java/com/inscloudtech/alog/clientdemo/aspectj/ActionLogAspect.java

@ -41,13 +41,13 @@ import java.util.stream.Collectors;
@Component
public class ActionLogAspect {
@Around("@annotation(actionLog)")
public Object doAround(ProceedingJoinPoint joinPoint, ActionLog actionLog) throws Throwable {
ActionLogMessage actionLogMessage = new ActionLogMessage();
//获取方法参数
Object[] args = joinPoint.getArgs();
Object arg = args[0];
//当操作行为是修改数据时需要上报修改前后数据值
if(actionLog.businessType().equals(BusinessType.UPDATE)){
Class<?> mapperClass = actionLog.mapperClass();
//service,mapper对应的实体类
@ -91,8 +91,6 @@ public class ActionLogAspect {
e.printStackTrace();
}
Long businessId = 0L;
//根据mapper查询一条修改前的数据
Object serviceObj = SpringUtils.getBean(mapperClass);
@ -124,7 +122,6 @@ public class ActionLogAspect {
long endTime = System.currentTimeMillis();
// 计算响应时间
long responseTime = endTime - startTime;
// log.info("请求的响应时间为: {} 毫秒", responseTime);
actionLogMessage.setResponseTime(responseTime);
handleLog(joinPoint, actionLog, null, result,actionLogMessage);
return result;
@ -162,6 +159,7 @@ public class ActionLogAspect {
getControllerMethodDescription(joinPoint, actionLog, actionLogMessage, jsonResult);
long tracerId = TracerHolder.getTracerId();
actionLogMessage.setTracerId(tracerId);
actionLogMessage.setCreateTime(System.currentTimeMillis());
UdpSender.offerActionLogger(actionLogMessage);
} catch (Exception exp) {
// 记录本地异常日志

2
example/src/main/java/com/inscloudtech/alog/clientdemo/custom/Starter.java

@ -51,7 +51,7 @@ public class Starter {
.setTagConfig(tagConfig)
.setSendMode(sendMode)
.build();
logger.info("初始化tagConfig: {}",tagConfig);
// logger.info("初始化tagConfig: {}",tagConfig);
tracerClientStarter.startPipeline();
}

24
example/src/main/resources/application.yml

@ -2,12 +2,8 @@ server:
port: 8085
# 数据源配置
spring:
redis:
host: 127.0.0.1
datasource:
driver-class-Name: com.mysql.cj.jdbc.Driver
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
url: jdbc:mysql://192.168.3.20:3306/action_log?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
username: root
password: 123456
@ -31,20 +27,14 @@ spring:
# url: jdbc:sqlserver://localhost:1433;DatabaseName=tempdb;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
# username: SA
# password: root
tag-config:
reqTags[0]: uid
reqTags[1]: url
logTags[0]: node
logTags[1]: bizType
respTags[0]: errno
respTags[1]: msg
delimiter: |
extract: 41
compress: 68
threshold: 10
#worker的地址
workers: ['127.0.0.1:39999','127.0.0.1:10000']
aLog-workers:
- 127.0.0.1:39999
#apollo.meta=http://127.0.0.1:8080
#apollo.config-service=http://127.0.0.1:8080
#app.id=order

Loading…
Cancel
Save