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 
are seeing query failure internally because of this change as we have our own 
custom requesterIdentity. @mcvsubbu @jtao15 @Jackie-Jiang .
   
   @abhs50  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