feat: 优化header打印
This commit is contained in:
parent
336257a62b
commit
ed2590a4da
@ -12,16 +12,14 @@ import cn.axzo.foundation.web.support.rpc.RpcClient;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import com.google.common.collect.Sets;
|
||||
import lombok.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.BooleanUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.util.AntPathMatcher;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ -33,7 +31,8 @@ public class ApiLogHook implements ProxyHook {
|
||||
private static final ThreadLocal<RequestParamsHolder> REQUEST_PARAMS_THREAD_LOCAL = new ThreadLocal<>();
|
||||
private static final int API_RESPONSE_CONTENT_PRINT_LENGTH = 2048;
|
||||
private final AntPathMatcher antPathMatcher = new AntPathMatcher();
|
||||
private static final Set<String> DEFAULT_IGNORE_HEADER_NAMES = ImmutableSet.of("User-Agent", "Authorization", "_EMPLOYEE_PRINCIPAL", "Bfs-Authorization");
|
||||
private static final Set<String> DEFAULT_IGNORE_HEADER_NAMES = ImmutableSet.of("User-Agent", "Authorization",
|
||||
"Axzo-Authorization", "Bfs-Authorization", "referer", "sec-fetch-site","sec-ch-ua-platform","sec-fetch-dest");
|
||||
|
||||
private final int maxLogLength;
|
||||
private final Predicate<HookContext> logEnableHook;
|
||||
@ -52,7 +51,12 @@ public class ApiLogHook implements ProxyHook {
|
||||
this.logEnableHook = Optional.ofNullable(logEnableHook).orElse(hookContext -> true);
|
||||
this.maxLogLength = Optional.ofNullable(maxLogLength).orElse(API_RESPONSE_CONTENT_PRINT_LENGTH);
|
||||
this.ignorePathPatterns = Optional.ofNullable(ignorePathPatterns).orElse(ImmutableList.of());
|
||||
this.ignoreHeaderNames = Optional.ofNullable(ignoreHeaderNames).orElse(DEFAULT_IGNORE_HEADER_NAMES);
|
||||
//忽略大小写
|
||||
this.ignoreHeaderNames = Optional.ofNullable(ignoreHeaderNames).orElseGet(() -> {
|
||||
TreeSet<String> sets = Sets.newTreeSet(String.CASE_INSENSITIVE_ORDER);
|
||||
sets.addAll(DEFAULT_IGNORE_HEADER_NAMES);
|
||||
return sets;
|
||||
});
|
||||
this.printOriginalParams = BooleanUtils.isTrue(printOriginalParams);
|
||||
// 默认 BusinessException 异常不打印ERROR级别日志.
|
||||
this.warningExceptions = Optional.ofNullable(warningExceptions).orElse(ImmutableSet.of(BusinessException.class));
|
||||
|
||||
Loading…
Reference in New Issue
Block a user