|
@@ -79,10 +79,19 @@ public class GatewayLogService {
|
|
|
String requestTimeStr = headers.get("x-request-time").get(0);
|
|
String requestTimeStr = headers.get("x-request-time").get(0);
|
|
|
long requestTime = Long.parseLong(requestTimeStr);
|
|
long requestTime = Long.parseLong(requestTimeStr);
|
|
|
gatewayLog.setRequestTime(requestTime);
|
|
gatewayLog.setRequestTime(requestTime);
|
|
|
|
|
+ String realRemoteAddr = "";
|
|
|
|
|
+ if (headers.get("X-Real-Remote") != null && !headers.get("X-Real-Remote").isEmpty()) {
|
|
|
|
|
+ realRemoteAddr = headers.get("X-Real-Remote").get(0);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
InetSocketAddress remote = exchange.getRequest().getRemoteAddress();
|
|
InetSocketAddress remote = exchange.getRequest().getRemoteAddress();
|
|
|
if (remote != null) {
|
|
if (remote != null) {
|
|
|
- gatewayLog.setRemoteAddr(remote.getHostString());
|
|
|
|
|
|
|
+ if (!realRemoteAddr.isBlank()) {
|
|
|
|
|
+ gatewayLog.setRemoteAddr(realRemoteAddr);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ gatewayLog.setRemoteAddr(remote.getHostString());
|
|
|
|
|
+ }
|
|
|
|
|
+ //gatewayLog.setRemoteAddr(remote.getHostString());
|
|
|
gatewayLog.setRemotePort(remote.getPort());
|
|
gatewayLog.setRemotePort(remote.getPort());
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|