From df3b50d0f728920c384426c01464eb50e7c116f4 Mon Sep 17 00:00:00 2001 From: LQS <2506203757@qq.com> Date: Wed, 24 Jul 2024 20:43:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 8 + .idea/compiler.xml | 13 ++ .idea/encodings.xml | 7 + .idea/jarRepositories.xml | 35 +++ .idea/misc.xml | 18 ++ .idea/vcs.xml | 6 + pom.xml | 27 +++ .../com/muyu/common/log/annotation/Log.java | 46 ++++ .../com/muyu/common/log/aspect/LogAspect.java | 220 ++++++++++++++++++ .../muyu/common/log/enums/BusinessStatus.java | 18 ++ .../muyu/common/log/enums/BusinessType.java | 58 +++++ .../muyu/common/log/enums/OperatorType.java | 23 ++ .../log/filter/PropertyPreExcludeFilter.java | 20 ++ .../common/log/service/AsyncLogService.java | 27 +++ ...ot.autoconfigure.AutoConfiguration.imports | 2 + ...ot.autoconfigure.AutoConfiguration.imports | 2 + .../com/muyu/common/log/annotation/Log.class | Bin 0 -> 926 bytes .../muyu/common/log/aspect/LogAspect.class | Bin 0 -> 9663 bytes .../common/log/enums/BusinessStatus.class | Bin 0 -> 1122 bytes .../muyu/common/log/enums/BusinessType.class | Bin 0 -> 1539 bytes .../muyu/common/log/enums/OperatorType.class | Bin 0 -> 1161 bytes .../log/filter/PropertyPreExcludeFilter.class | Bin 0 -> 824 bytes .../common/log/service/AsyncLogService.class | Bin 0 -> 1120 bytes target/cloud-common-log-3.6.3.jar | Bin 0 -> 12141 bytes target/maven-archiver/pom.properties | 5 + .../compile/default-compile/createdFiles.lst | 7 + .../compile/default-compile/inputFiles.lst | 7 + 27 files changed, 549 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/compiler.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/jarRepositories.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/vcs.xml create mode 100644 pom.xml create mode 100644 src/main/java/com/muyu/common/log/annotation/Log.java create mode 100644 src/main/java/com/muyu/common/log/aspect/LogAspect.java create mode 100644 src/main/java/com/muyu/common/log/enums/BusinessStatus.java create mode 100644 src/main/java/com/muyu/common/log/enums/BusinessType.java create mode 100644 src/main/java/com/muyu/common/log/enums/OperatorType.java create mode 100644 src/main/java/com/muyu/common/log/filter/PropertyPreExcludeFilter.java create mode 100644 src/main/java/com/muyu/common/log/service/AsyncLogService.java create mode 100644 src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 target/classes/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 target/classes/com/muyu/common/log/annotation/Log.class create mode 100644 target/classes/com/muyu/common/log/aspect/LogAspect.class create mode 100644 target/classes/com/muyu/common/log/enums/BusinessStatus.class create mode 100644 target/classes/com/muyu/common/log/enums/BusinessType.class create mode 100644 target/classes/com/muyu/common/log/enums/OperatorType.class create mode 100644 target/classes/com/muyu/common/log/filter/PropertyPreExcludeFilter.class create mode 100644 target/classes/com/muyu/common/log/service/AsyncLogService.class create mode 100644 target/cloud-common-log-3.6.3.jar create mode 100644 target/maven-archiver/pom.properties create mode 100644 target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..6d1475b --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..e6fa7ca --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..9e1cc11 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,18 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..27ab5a5 --- /dev/null +++ b/pom.xml @@ -0,0 +1,27 @@ + + + + com.muyu + cloud-common + 3.6.3 + + 4.0.0 + + cloud-common-log + + + cloud-common-log日志记录 + + + + + + + com.muyu + cloud-common-security + + + + diff --git a/src/main/java/com/muyu/common/log/annotation/Log.java b/src/main/java/com/muyu/common/log/annotation/Log.java new file mode 100644 index 0000000..ac6394e --- /dev/null +++ b/src/main/java/com/muyu/common/log/annotation/Log.java @@ -0,0 +1,46 @@ +package com.muyu.common.log.annotation; + +import com.muyu.common.log.enums.BusinessType; +import com.muyu.common.log.enums.OperatorType; + +import java.lang.annotation.*; + +/** + * 自定义操作日志记录注解 + * + * @author muyu + */ +@Target({ElementType.PARAMETER, ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface Log { + /** + * 模块 + */ + public String title () default ""; + + /** + * 功能 + */ + public BusinessType businessType () default BusinessType.OTHER; + + /** + * 操作人类别 + */ + public OperatorType operatorType () default OperatorType.MANAGE; + + /** + * 是否保存请求的参数 + */ + public boolean isSaveRequestData () default true; + + /** + * 是否保存响应的参数 + */ + public boolean isSaveResponseData () default true; + + /** + * 排除指定的请求参数 + */ + public String[] excludeParamNames () default {}; +} diff --git a/src/main/java/com/muyu/common/log/aspect/LogAspect.java b/src/main/java/com/muyu/common/log/aspect/LogAspect.java new file mode 100644 index 0000000..f82ffab --- /dev/null +++ b/src/main/java/com/muyu/common/log/aspect/LogAspect.java @@ -0,0 +1,220 @@ +package com.muyu.common.log.aspect; + +import com.alibaba.fastjson2.JSON; +import com.muyu.common.core.utils.ServletUtils; +import com.muyu.common.core.utils.StringUtils; +import com.muyu.common.core.utils.ip.IpUtils; +import com.muyu.common.log.annotation.Log; +import com.muyu.common.log.enums.BusinessStatus; +import com.muyu.common.log.filter.PropertyPreExcludeFilter; +import com.muyu.common.log.service.AsyncLogService; +import com.muyu.common.security.utils.SecurityUtils; +import com.muyu.common.system.domain.SysOperLog; +import org.apache.commons.lang3.ArrayUtils; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.annotation.AfterReturning; +import org.aspectj.lang.annotation.AfterThrowing; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Before; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.NamedThreadLocal; +import org.springframework.http.HttpMethod; +import org.springframework.stereotype.Component; +import org.springframework.validation.BindingResult; +import org.springframework.web.multipart.MultipartFile; + +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import java.util.Collection; +import java.util.Map; + +/** + * 操作日志记录处理 + * + * @author muyu + */ +@Aspect +@Component +public class LogAspect { + /** + * 排除敏感属性字段 + */ + public static final String[] EXCLUDE_PROPERTIES = {"password", "oldPassword", "newPassword", "confirmPassword"}; + private static final Logger log = LoggerFactory.getLogger(LogAspect.class); + /** + * 计算操作消耗时间 + */ + private static final ThreadLocal TIME_THREADLOCAL = new NamedThreadLocal("Cost Time"); + + @Autowired + private AsyncLogService asyncLogService; + + /** + * 处理请求前执行 + */ + @Before(value = "@annotation(controllerLog)") + public void boBefore (JoinPoint joinPoint, Log controllerLog) { + TIME_THREADLOCAL.set(System.currentTimeMillis()); + } + + /** + * 处理完请求后执行 + * + * @param joinPoint 切点 + */ + @AfterReturning(pointcut = "@annotation(controllerLog)", returning = "jsonResult") + public void doAfterReturning (JoinPoint joinPoint, Log controllerLog, Object jsonResult) { + handleLog(joinPoint, controllerLog, null, jsonResult); + } + + /** + * 拦截异常操作 + * + * @param joinPoint 切点 + * @param e 异常 + */ + @AfterThrowing(value = "@annotation(controllerLog)", throwing = "e") + public void doAfterThrowing (JoinPoint joinPoint, Log controllerLog, Exception e) { + handleLog(joinPoint, controllerLog, e, null); + } + + protected void handleLog (final JoinPoint joinPoint, Log controllerLog, final Exception e, Object jsonResult) { + try { + // *========数据库日志=========*// + SysOperLog operLog = new SysOperLog(); + operLog.setStatus(BusinessStatus.SUCCESS.ordinal()); + // 请求的地址 + String ip = IpUtils.getIpAddr(); + operLog.setOperIp(ip); + operLog.setOperUrl(StringUtils.substring(ServletUtils.getRequest().getRequestURI(), 0, 255)); + String username = SecurityUtils.getUsername(); + if (StringUtils.isNotBlank(username)) { + operLog.setOperName(username); + } + + if (e != null) { + operLog.setStatus(BusinessStatus.FAIL.ordinal()); + operLog.setErrorMsg(StringUtils.substring(e.getMessage(), 0, 2000)); + } + // 设置方法名称 + String className = joinPoint.getTarget().getClass().getName(); + String methodName = joinPoint.getSignature().getName(); + operLog.setMethod(className + "." + methodName + "()"); + // 设置请求方式 + operLog.setRequestMethod(ServletUtils.getRequest().getMethod()); + // 处理设置注解上的参数 + getControllerMethodDescription(joinPoint, controllerLog, operLog, jsonResult); + // 设置消耗时间 + operLog.setCostTime(System.currentTimeMillis() - TIME_THREADLOCAL.get()); + // 保存数据库 + asyncLogService.saveSysLog(operLog); + } catch (Exception exp) { + // 记录本地异常日志 + log.error("异常信息:{}", exp.getMessage()); + exp.printStackTrace(); + } finally { + TIME_THREADLOCAL.remove(); + } + } + + /** + * 获取注解中对方法的描述信息 用于Controller层注解 + * + * @param log 日志 + * @param operLog 操作日志 + * + * @throws Exception + */ + public void getControllerMethodDescription (JoinPoint joinPoint, Log log, SysOperLog operLog, Object jsonResult) throws Exception { + // 设置action动作 + operLog.setBusinessType(log.businessType().ordinal()); + // 设置标题 + operLog.setTitle(log.title()); + // 设置操作人类别 + operLog.setOperatorType(log.operatorType().ordinal()); + // 是否需要保存request,参数和值 + if (log.isSaveRequestData()) { + // 获取参数的信息,传入到数据库中。 + setRequestValue(joinPoint, operLog, log.excludeParamNames()); + } + // 是否需要保存response,参数和值 + if (log.isSaveResponseData() && StringUtils.isNotNull(jsonResult)) { + operLog.setJsonResult(StringUtils.substring(JSON.toJSONString(jsonResult), 0, 2000)); + } + } + + /** + * 获取请求的参数,放到log中 + * + * @param operLog 操作日志 + * + * @throws Exception 异常 + */ + private void setRequestValue (JoinPoint joinPoint, SysOperLog operLog, String[] excludeParamNames) throws Exception { + String requestMethod = operLog.getRequestMethod(); + Map paramsMap = ServletUtils.getParamMap(ServletUtils.getRequest()); + if (StringUtils.isEmpty(paramsMap) + && (HttpMethod.PUT.name().equals(requestMethod) || HttpMethod.POST.name().equals(requestMethod))) { + String params = argsArrayToString(joinPoint.getArgs(), excludeParamNames); + operLog.setOperParam(StringUtils.substring(params, 0, 2000)); + } else { + operLog.setOperParam(StringUtils.substring(JSON.toJSONString(paramsMap, excludePropertyPreFilter(excludeParamNames)), 0, 2000)); + } + } + + /** + * 参数拼装 + */ + private String argsArrayToString (Object[] paramsArray, String[] excludeParamNames) { + String params = ""; + if (paramsArray != null && paramsArray.length > 0) { + for (Object o : paramsArray) { + if (StringUtils.isNotNull(o) && !isFilterObject(o)) { + try { + String jsonObj = JSON.toJSONString(o, excludePropertyPreFilter(excludeParamNames)); + params += jsonObj.toString() + " "; + } catch (Exception e) { + } + } + } + } + return params.trim(); + } + + /** + * 忽略敏感属性 + */ + public PropertyPreExcludeFilter excludePropertyPreFilter (String[] excludeParamNames) { + return new PropertyPreExcludeFilter().addExcludes(ArrayUtils.addAll(EXCLUDE_PROPERTIES, excludeParamNames)); + } + + /** + * 判断是否需要过滤的对象。 + * + * @param o 对象信息。 + * + * @return 如果是需要过滤的对象,则返回true;否则返回false。 + */ + @SuppressWarnings("rawtypes") + public boolean isFilterObject (final Object o) { + Class clazz = o.getClass(); + if (clazz.isArray()) { + return clazz.getComponentType().isAssignableFrom(MultipartFile.class); + } else if (Collection.class.isAssignableFrom(clazz)) { + Collection collection = (Collection) o; + for (Object value : collection) { + return value instanceof MultipartFile; + } + } else if (Map.class.isAssignableFrom(clazz)) { + Map map = (Map) o; + for (Object value : map.entrySet()) { + Map.Entry entry = (Map.Entry) value; + return entry.getValue() instanceof MultipartFile; + } + } + return o instanceof MultipartFile || o instanceof HttpServletRequest || o instanceof HttpServletResponse + || o instanceof BindingResult; + } +} diff --git a/src/main/java/com/muyu/common/log/enums/BusinessStatus.java b/src/main/java/com/muyu/common/log/enums/BusinessStatus.java new file mode 100644 index 0000000..45e9713 --- /dev/null +++ b/src/main/java/com/muyu/common/log/enums/BusinessStatus.java @@ -0,0 +1,18 @@ +package com.muyu.common.log.enums; + +/** + * 操作状态 + * + * @author muyu + */ +public enum BusinessStatus { + /** + * 成功 + */ + SUCCESS, + + /** + * 失败 + */ + FAIL, +} diff --git a/src/main/java/com/muyu/common/log/enums/BusinessType.java b/src/main/java/com/muyu/common/log/enums/BusinessType.java new file mode 100644 index 0000000..2e928c7 --- /dev/null +++ b/src/main/java/com/muyu/common/log/enums/BusinessType.java @@ -0,0 +1,58 @@ +package com.muyu.common.log.enums; + +/** + * 业务操作类型 + * + * @author muyu + */ +public enum BusinessType { + /** + * 其它 + */ + OTHER, + + /** + * 新增 + */ + INSERT, + + /** + * 修改 + */ + UPDATE, + + /** + * 删除 + */ + DELETE, + + /** + * 授权 + */ + GRANT, + + /** + * 导出 + */ + EXPORT, + + /** + * 导入 + */ + IMPORT, + + /** + * 强退 + */ + FORCE, + + /** + * 生成代码 + */ + GENCODE, + + /** + * 清空数据 + */ + CLEAN, +} diff --git a/src/main/java/com/muyu/common/log/enums/OperatorType.java b/src/main/java/com/muyu/common/log/enums/OperatorType.java new file mode 100644 index 0000000..645777f --- /dev/null +++ b/src/main/java/com/muyu/common/log/enums/OperatorType.java @@ -0,0 +1,23 @@ +package com.muyu.common.log.enums; + +/** + * 操作人类别 + * + * @author muyu + */ +public enum OperatorType { + /** + * 其它 + */ + OTHER, + + /** + * 后台用户 + */ + MANAGE, + + /** + * 手机端用户 + */ + MOBILE +} diff --git a/src/main/java/com/muyu/common/log/filter/PropertyPreExcludeFilter.java b/src/main/java/com/muyu/common/log/filter/PropertyPreExcludeFilter.java new file mode 100644 index 0000000..2245256 --- /dev/null +++ b/src/main/java/com/muyu/common/log/filter/PropertyPreExcludeFilter.java @@ -0,0 +1,20 @@ +package com.muyu.common.log.filter; + +import com.alibaba.fastjson2.filter.SimplePropertyPreFilter; + +/** + * 排除JSON敏感属性 + * + * @author muyu + */ +public class PropertyPreExcludeFilter extends SimplePropertyPreFilter { + public PropertyPreExcludeFilter () { + } + + public PropertyPreExcludeFilter addExcludes (String... filters) { + for (int i = 0 ; i < filters.length ; i++) { + this.getExcludes().add(filters[i]); + } + return this; + } +} diff --git a/src/main/java/com/muyu/common/log/service/AsyncLogService.java b/src/main/java/com/muyu/common/log/service/AsyncLogService.java new file mode 100644 index 0000000..46e1cdf --- /dev/null +++ b/src/main/java/com/muyu/common/log/service/AsyncLogService.java @@ -0,0 +1,27 @@ +package com.muyu.common.log.service; + +import com.muyu.common.core.constant.SecurityConstants; +import com.muyu.common.system.remote.RemoteLogService; +import com.muyu.common.system.domain.SysOperLog; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; + +/** + * 异步调用日志服务 + * + * @author muyu + */ +@Service +public class AsyncLogService { + @Autowired + private RemoteLogService remoteLogService; + + /** + * 保存系统日志记录 + */ + @Async + public void saveSysLog (SysOperLog sysOperLog) throws Exception { + remoteLogService.saveLog(sysOperLog, SecurityConstants.INNER); + } +} diff --git a/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000..e46e773 --- /dev/null +++ b/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1,2 @@ +com.muyu.common.log.service.AsyncLogService +com.muyu.common.log.aspect.LogAspect diff --git a/target/classes/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/target/classes/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000..e46e773 --- /dev/null +++ b/target/classes/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1,2 @@ +com.muyu.common.log.service.AsyncLogService +com.muyu.common.log.aspect.LogAspect diff --git a/target/classes/com/muyu/common/log/annotation/Log.class b/target/classes/com/muyu/common/log/annotation/Log.class new file mode 100644 index 0000000000000000000000000000000000000000..64c0798c649052181d6c74bbc0189fc287c5c330 GIT binary patch literal 926 zcma)4O>fgc5Ph4Fq%8%S(gFoa+W=L<0snxCLr?-mYChzc9-7m}9V}P&Zt(6#VnY22)O}W7e_l9!U zsMTJ(-~QO;TgPT3XXMjYN5*!fl>+5v>!QpLBLub=$7ZUPp}*&K`W7bcl7=#qXzb|J)Bg z_1Md!Vo67bE^mk~PmTpoRGGgD+gs&Xu3?R%b&kpg8w}jV=0Bi9xQF`;J;2rys$-j> zhuB%jF0jkMqwBz9JXtWtoV|p-KkHLGWPag;-Z23|4)zX9v! B{=5JH literal 0 HcmV?d00001 diff --git a/target/classes/com/muyu/common/log/aspect/LogAspect.class b/target/classes/com/muyu/common/log/aspect/LogAspect.class new file mode 100644 index 0000000000000000000000000000000000000000..52b4f9021ad4554dd6dad7a3bbe71f415aa4480d GIT binary patch literal 9663 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 K@Qi9wX#D|uxA$uR literal 0 HcmV?d00001 diff --git a/target/classes/com/muyu/common/log/enums/BusinessType.class b/target/classes/com/muyu/common/log/enums/BusinessType.class new file mode 100644 index 0000000000000000000000000000000000000000..ce4c938f682cd75b598851a61a9508919f048aaf GIT binary patch literal 1539 zcma)6+fEZv6kS6vGaU{xRH<^2o3|E_ih_zQNGSuNrNvHdY&0fAtyt1dO)o@#z&HOz zYobP@;n~DrGVZfmLJdB&O}b~T*|)RK-u?CG+fM+?NUP{ka5Y~khs%w_MwlMT6(?M( z?1c+Xqg)HGHEKntP^)DQ-xPdM;1=+}tH6`WJTTJ=f{E^8BQjVM@X28BR?;%l8AHG^LFiex2i0*6K^0d7 zLYO9@@}-JXP;f37O6=PQcDQ6ad*RgXej#6v=$OTI6>|b%+@O=6IGCh9)jzOHjY8^` zg2iA*bi8EOYLO1Ys#lB7UZk^vOu+eX3f#g1i5@LF#rleZKxe9Uck(lLBianG^qjVk%Mf}t#p zYcyYKYj&?AP%0bkwx5-V0^O=Ks`dW9_qVsOXJKxJ^( z!$4=Sjx`%YpS&*}d5iFu19yn{yf&=NF-9g6G0a2?%t`?~4) zgQ4CyGCgDDdaaWqGY$qxMFdfXNTclcR5|`_=#bs0$&3%Eg3_H5TN85Xj+`k`@b=(geX^+xy5 z?2XC_GPo&YQNOBtQF5~i&7jrYo?*8Q&*J5#H6_OwP-*R|JY=2GCyUmIH?6*7 zjC_x9;cTu=wy5;%sXWgEL@r`w)_Jze3`*1Wy`K5X;@hQy&Moq9yHg@rGh};dXOWv2 zpp*P4PBI~oT;k3nM1=BLY!E(2(JGz%r;L&Kiqr+P&lEA_=|3v&=(CZD3RCSL|Gsc{Q=eqj}dNmq%q`XCo(3ru5J;-6Y4$L`d~^fekZPWH++VBrwEH+RT6DCbx^MS_nyQAQJd6$zwBn=}m-qwOYRKE)>CLfHBP9z^*+ literal 0 HcmV?d00001 diff --git a/target/classes/com/muyu/common/log/filter/PropertyPreExcludeFilter.class b/target/classes/com/muyu/common/log/filter/PropertyPreExcludeFilter.class new file mode 100644 index 0000000000000000000000000000000000000000..fe4106b0f824349ca5763867114c8e5adb5078db GIT binary patch literal 824 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 literal 0 HcmV?d00001 diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties new file mode 100644 index 0000000..d55d631 --- /dev/null +++ b/target/maven-archiver/pom.properties @@ -0,0 +1,5 @@ +#Generated by Maven +#Wed Jul 24 20:42:33 CST 2024 +groupId=com.muyu +artifactId=cloud-common-log +version=3.6.3 diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..cebe001 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,7 @@ +com\muyu\common\log\enums\OperatorType.class +com\muyu\common\log\filter\PropertyPreExcludeFilter.class +com\muyu\common\log\service\AsyncLogService.class +com\muyu\common\log\annotation\Log.class +com\muyu\common\log\enums\BusinessStatus.class +com\muyu\common\log\aspect\LogAspect.class +com\muyu\common\log\enums\BusinessType.class diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..4b2afac --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,7 @@ +D:\workspace-IceCeram-Cloud-master\zglchaifen\cloud-common-log\src\main\java\com\muyu\common\log\filter\PropertyPreExcludeFilter.java +D:\workspace-IceCeram-Cloud-master\zglchaifen\cloud-common-log\src\main\java\com\muyu\common\log\enums\OperatorType.java +D:\workspace-IceCeram-Cloud-master\zglchaifen\cloud-common-log\src\main\java\com\muyu\common\log\enums\BusinessStatus.java +D:\workspace-IceCeram-Cloud-master\zglchaifen\cloud-common-log\src\main\java\com\muyu\common\log\enums\BusinessType.java +D:\workspace-IceCeram-Cloud-master\zglchaifen\cloud-common-log\src\main\java\com\muyu\common\log\service\AsyncLogService.java +D:\workspace-IceCeram-Cloud-master\zglchaifen\cloud-common-log\src\main\java\com\muyu\common\log\annotation\Log.java +D:\workspace-IceCeram-Cloud-master\zglchaifen\cloud-common-log\src\main\java\com\muyu\common\log\aspect\LogAspect.java