GSharayu commented on code in PR #8907:
URL: https://github.com/apache/pinot/pull/8907#discussion_r941931998


##########
pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java:
##########
@@ -658,9 +661,34 @@ private boolean isFilterAlwaysTrue(PinotQuery pinotQuery) {
   }
 
   private void logBrokerResponse(long requestId, String query, RequestContext 
requestContext, String tableName,
-      int numUnavailableSegments, ServerStats serverStats, 
BrokerResponseNative brokerResponse, long totalTimeMs) {
+      int numUnavailableSegments, ServerStats serverStats, 
BrokerResponseNative brokerResponse, long totalTimeMs,
+      @Nullable RequesterIdentity requesterIdentity) {
     LOGGER.debug("Broker Response: {}", brokerResponse);
 
+    boolean enableClientIpLogging = 
_config.getProperty(Broker.CONFIG_OF_BROKER_REQUEST_CLIENT_IP_LOGGING,
+        Broker.DEFAULT_BROKER_REQUEST_CLIENT_IP_LOGGING);
+    String clientIp = "unknown";
+    // If reverse proxy is used X-Forwarded-For will be populated
+    // If X-Forwarded-For is not present, check if x-real-ip is present
+    // Since X-Forwarded-For can contain comma separated list of values, we 
convert it to ";" delimiter to avoid
+    // downstream parsing errors for other fields where "," is being used
+    if (enableClientIpLogging && requesterIdentity != null) {
+      for (Map.Entry<String, String> entry : ((HttpRequesterIdentity) 
requesterIdentity).getHttpHeaders().entries()) {

Review Comment:
   I see we are assuming requesterIdentity of type HttpRequesterIdentity. We 
have GrpcRequesterIdentity as well and we are seeing query failure internally 
because of this change as we have our own custom requesterIdentity. @mcvsubbu 
@jtao15 .
   
   @Jackie-Jiang  We need to check if the requesterIdentity is instance of 
HttpRequesterIdentity?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to