Commit 056beae3 authored by 赵啸非's avatar 赵啸非

修改网关日志

parent 8a537e25
......@@ -3,10 +3,13 @@ package com.mortals.xhx.base.framework.filter;
import cn.hutool.extra.servlet.ServletUtil;
import com.alibaba.fastjson.JSON;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.base.framework.service.MessageProducer;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.codec.Charsets;
import org.reactivestreams.Publisher;
import org.slf4j.MDC;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.gateway.filter.GatewayFilterChain;
import org.springframework.cloud.gateway.filter.GlobalFilter;
import org.springframework.core.Ordered;
......@@ -24,6 +27,7 @@ import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
import java.nio.charset.Charset;
import java.util.List;
import java.util.Map;
import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.ORIGINAL_RESPONSE_CONTENT_TYPE_ATTR;
......@@ -40,6 +44,12 @@ import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.O
public class GatewayResponseFilter implements GlobalFilter, Ordered {
@Value("${spring.application.name:gateway}")
private String appName;
@Autowired
private MessageProducer messageProducer;
private static final String TRACE_ID = "traceId";
@Override
public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
ServerHttpResponse originalResponse = exchange.getResponse();
......@@ -60,12 +70,17 @@ public class GatewayResponseFilter implements GlobalFilter, Ordered {
join.read(content);
DataBufferUtils.release(join);
String responseData = new String(content, Charsets.UTF_8);
// List<String> strings = exchange.getResponse().getHeaders()..get(TRACE_ID);
// responseData = beforeBodyWriteInternal(responseData, exchange.getRequest());
// responseData = "\"" + beforeBodyWriteInternal(responseData, exchange.getRequest()) + "\"";
byte[] uppedContent = new String(responseData.getBytes(), Charset.forName("UTF-8")).getBytes();
originalResponse.getHeaders().setContentLength(uppedContent.length);
// 设置加密头标识
originalResponse.getHeaders().set("encrypt", "true");
// originalResponse.getHeaders().setContentLength(uppedContent.length);
// // 设置加密头标识
// originalResponse.getHeaders().set("encrypt", "true");
return bufferFactory.wrap(uppedContent);
}));
......
......@@ -86,7 +86,7 @@ public class GlobalLogFilter implements GlobalFilter, Ordered {
paramStr=JSON.toJSONString(parameterMap);
}
String traceId = IdUtil.fastSimpleUUID();
String traceId = IdUtil.objectId();
AccessLogPdu accessLogPdu = new AccessLogPdu();
accessLogPdu.initAttrValue();
accessLogPdu.setAppName(appName);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment