mirror of
https://github.com/hs-web/hsweb-framework.git
synced 2026-06-03 03:12:25 +08:00
优化日志
This commit is contained in:
@@ -74,7 +74,9 @@ public class UserTokenReactiveAuthenticationSupplier implements ReactiveAuthenti
|
||||
.getByToken(t.getToken())
|
||||
.filter(UserToken::validate))
|
||||
.map(tokenMono -> tokenMono
|
||||
.flatMap(token -> userTokenManager.touch(token.getToken()).thenReturn(token))
|
||||
.flatMap(token -> userTokenManager
|
||||
.touch(token.getToken())
|
||||
.thenReturn(token))
|
||||
.flatMap(token -> get(thirdPartAuthenticationManager.get(token.getType()), token.getUserId())))
|
||||
.orElseGet(Mono::empty))
|
||||
.flatMap(auth -> ReactiveLogger.mdc("userId", auth.getUser().getId())
|
||||
|
||||
@@ -50,9 +50,9 @@ public class ReactiveAopAccessLoggerSupport extends StaticMethodMatcherPointcutA
|
||||
AccessLoggerInfo info = createLogger(methodInterceptorHolder);
|
||||
Object response = methodInvocation.proceed();
|
||||
if (response instanceof Mono) {
|
||||
return wrapMonoResponse(((Mono) response), info);
|
||||
return wrapMonoResponse(((Mono<?>) response), info);
|
||||
} else if (response instanceof Flux) {
|
||||
return wrapFluxResponse(((Flux) response), info);
|
||||
return wrapFluxResponse(((Flux<?>) response), info);
|
||||
}
|
||||
return response;
|
||||
});
|
||||
@@ -60,7 +60,8 @@ public class ReactiveAopAccessLoggerSupport extends StaticMethodMatcherPointcutA
|
||||
|
||||
protected Flux<?> wrapFluxResponse(Flux<?> flux, AccessLoggerInfo loggerInfo) {
|
||||
return Mono.subscriberContext()
|
||||
.<RequestInfo>flatMap(ctx -> Mono.justOrEmpty(ctx.getOrEmpty(RequestInfo.class)))
|
||||
.<RequestInfo>flatMap(ctx -> Mono.<RequestInfo>justOrEmpty(ctx.getOrEmpty(RequestInfo.class))
|
||||
.doOnNext(info -> ReactiveLogger.log(ctx, info::setContext)))
|
||||
.doOnNext(loggerInfo::putAccessInfo)
|
||||
.thenMany(flux)
|
||||
.doOnError(loggerInfo::setException)
|
||||
|
||||
Reference in New Issue
Block a user