Spring AOP 审计日志切面(springboot审计)

Spring AOP 审计日志切面(springboot审计)

java

复制

下载

@Aspect

@Component

@Slf4j

public class AuditLogAspect {

@Pointcut("@annotation(org.springframework.web.bind.annotation.PostMapping) || " +

"@annotation(org.springfra JiAOYu.HUoCheNGrM.CN/jy/19722.html mework.web.bind.annotation.PutMapping) || " +

"@annotation(org.springframework.web.bind.annotation.DeleteMapping)")

public void writeOperations() {}

@Around("writeOperations()")

public Object auditOperation(ProceedingJoinPoint pjp) throws Throwable {

MethodSignature signature = (JiAOYu.HUoCheNGrM.CN/jy/19721.html) pjp.getSignature();

String operation = signature.getMethod().getName();

Object[] args = pjp.getArgs();

// 获取当前用户

String username = SecurityContextHolder.getContext(JiAOYu.HUoCheNGrM.CN/jy/19720.html).getAuthentication().getName();

try {

Object result = pjp.proceed();

log.info("操作成功: 用户={}, 操作={}, 参数={}", username, operation, args);

return result;

} catch (Exception ex) {

log.error("操作失败: 用户={}, 操作={}, 错误={}", username, operation, JiAOYu.HUoCheNGrM.CN/jy/19719.html ex.getMessage());

throw ex;

}

}

}

6. Spring Cloud Gateway 路由配置

java

复制

下载

@Configuration

public class GatewayConfig {

@Bean

public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {

return JiAOYu.HUoCheNGrM.CN/jy/19718.html builder.routes()

.route("user-service", r -> r.path("/api/users/**")

.filters(f -> f

.addRequestHeader("X-Forwarded-For", "SpringCloudGateway")

.circuitBreaker(c -> c.setName("userCB").setFallbackUri("forward:/fallback"))

.uri("lb://USER-SERVICE"))

.route("product-service", r -> r.path("/api/products/**")

.filters(f -> f

.rewritePath JiAOYu.HUoCheNGrM.CN/jy/19717.html("/api/products/(?<segment>.*)", "/${segment}")

.retry(retry -> retry.setRetries(3)))

.uri("lb://PRODUCT-SERVICE"))

.route("auth-service", r -> r.path("/auth/**")

.filters(f -> f

.removeRequestHeader("Cookie"))

.uri("lb://AUTH-SERVICE"))

.build();

}

}

特别声明:[Spring AOP 审计日志切面(springboot审计)] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

人前贵公子,人后“靠女人上位”?这5位男星,都曾被叫软饭男(人前富贵人后遭罪)

纪凌尘已经与前任分手六年却鲜有人知,李亚鹏的四位前任都是人脉极其丰富的名流,而秦俊杰的一碗胡辣汤则直接毁掉了他顶流女友的职业前景。 纪凌尘在分手时的一句“你爱过大海”被塑造成了渣男名言,而秦俊杰的团队则将矛头…

人前贵公子,人后“靠女人上位”?这5位男星,都曾被叫软饭男(人前富贵人后遭罪)

演不了穷人,天生富贵相(不适合演穷人的演员)

从2014年开始,俞飞鸿逐渐转型为“贵妇”角色的代言人,特别是她扮演的宋美龄一角,更是让她在这一领域站稳了脚跟。无论是朱珠、王琳、还是俞飞鸿,她们都凭借各自的家庭背景与个人魅力,注定与豪门贵妇的角色形象紧密相…

演不了穷人,天生富贵相(不适合演穷人的演员)

Xencelabs 推首款集成 Calman Ready 硬件校色数位屏,23.8&quot; UHD(xencelabs是什么牌子)

8 月 9 日消息,绘王旗下数字绘图工具高端品牌 Xencelabs 马蒂斯昨日发布了全球首款集成 Calman Ready硬件校色技术的数位屏 —— 数位屏 24+。 在 Calman Prof…

Xencelabs 推首款集成 Calman Ready 硬件校色数位屏,23.8&quot; UHD(xencelabs是什么牌子)

SNH48GROUP第十二届年度青春盛典首登香港SNH48杨冰怡登顶加冕(snh48十三期成员)

2025SNH48GROUP年度青春盛典,在8月2日晚首次登陆中国香港·亚洲国际博览馆Arena,由次世代大型AIUGC音舞及虚拟偶像养成模拟游戏AUDITIONSGO冠名,全场热血青春风暴席卷而来!继“以作…

SNH48GROUP第十二届年度青春盛典首登香港SNH48杨冰怡登顶加冕(snh48十三期成员)

纯数学背景在数据分析领域有竞争力吗?【干货文】(数学背景头像)

据2025年猎聘数据显示,数学背景从业者在数据分析领域薪资溢价高达28%,在量化金融、密码学等高端岗位中,其专业优势更为显著。在众多证书中,CDA数据分析师认证展现出独特价值:数学背景+CDA Level …

纯数学背景在数据分析领域有竞争力吗?【干货文】(数学背景头像)