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审计)] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

TVB童颜女星罕见露面!离巢后转型做网红,兼顾红酒生意越发富贵(TVB童颜女星罕见露面)

虽然乐瞳平时行事低调,但偶尔也会在『社交平台』分享生活日常。粉丝们总是热情留言互动,而她也会耐心回复每一条评论,保持着与粉丝的良好互动。更难得的是,她保持着匀称身材,虽然骨架娇小却有着恰到好处的肉感,散发着健康…

TVB童颜女星罕见露面!离巢后转型做网红,兼顾红酒生意越发富贵(TVB童颜女星罕见露面)

张永伟营销:为什么90%的新站SEO都败给了‘AI看不见的内容’?(张永伟百人会)

本文结合GEO(生成式引擎优化)、舆情公关、口碑营销的深度融合策略,揭示新网站如何通过&quot;技术优化+内容战略+风险防控&quot;实现指数级增长,并植入3个行业实战案例。某科技公司因未及时优化舆情内容,导致AI生成的

张永伟营销:为什么90%的新站SEO都败给了‘AI看不见的内容’?(张永伟百人会)

小陶虹上位史:嫁徐峥,交好张庭,现在已成娱圈实力派(小陶虹演技)

这戏路也是没谁了,从文艺片到商业大片,她都能驾驭得游刃有余。 有人说她大度有人说她糊涂,但我觉得这恰恰体现了小陶虹的智慧。张庭创业后小陶虹就成了她的得力助手,两人联手打造了一个庞大的商业帝国。 除了商业上…

小陶虹上位史:嫁徐峥,交好张庭,现在已成娱圈实力派(小陶虹演技)

钻石成灾的穷国:女人结婚不生孩子禁止出门,男人最多娶3个老婆(讲讲钻石)

如果说起哪个国家钻石储量丰富,那么大家第一时间肯定会觉得这个国家肯定很有钱,但世界上有这样一个国家,尽管钻石储量丰富,却依然一贫如洗。 钻石是奢侈与美丽的象征,由于其价值不菲,往往一个不大不小的钻石矿藏就有…

钻石成灾的穷国:女人结婚不生孩子禁止出门,男人最多娶3个老婆(讲讲钻石)

破解田螺剪尾难题的神器:膳道不锈钢专用螺蛳剪尾机(田螺剪尾还能活多久)

田螺作为广受欢迎的美食,却因其难以清理的尾部让不少吃货头疼不已。本文深入解析膳道不锈钢田螺剪尾钳这一创新设备,探讨其工作原理、应用场景、发展现状及选购建议,带您了解这一厨具界的黑科技。

破解田螺剪尾难题的神器:膳道不锈钢专用螺蛳剪尾机(田螺剪尾还能活多久)