-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74262/
-----------------------------------------------------------

(Updated Dec. 20, 2022, 10:04 a.m.)


Review request for ranger, Don Bosco Durai, Abhay Kulkarni, Madhan Neethiraj, 
Mehul Parikh, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, 
Sailaja Polavarapu, Subhrat Chaudhary, and Velmurugan Periasamy.


Bugs: RANGER-4024
    https://issues.apache.org/jira/browse/RANGER-4024


Repository: ranger


Description (updated)
-------

In Ranger, we do not have the correlation Id which needs to be stored in the 
logs whenever we get the requestId header from the caller microservice 
Proposal:
RangerMDCFilter will capture the  correlation Id which needs to be stored in 
the logs whenever we get the requestId header from the caller microservice 
This RangerMDCFilter can be enabled in the web.xml and logging 
ConversionPattern if needed to log requestId in the logs
 

<filter>
<filter-name>RangerMDCFilter</filter-name>
<filter-class&amp;amp;gt;org.apache.ranger.security.web.filter.RangerMDCFilter</filter-class&amp;amp;gt;
</filter>

<filter-mapping>
<filter-name>RangerMDCFilter</filter-name>
<url-pattern>/service/*</url-pattern>
</filter-mapping>
 
and to change the conversion pattern to something like this, using the %X{} 
placeholder for each entry contained in the MDC we want to be logged:

Example:

  <appender name="xa_log_appender" 
class="ch.qos.logback.core.rolling.RollingFileAppender">
    <!--See http://logback.qos.ch/manual/appenders.html#RollingFileAppender-->
    <!--and 
http://logback.qos.ch/manual/appenders.html#TimeBasedRollingPolicy-->
    <!--for further documentation-->
    <file>${logdir}/ranger-admin-${hostname}-${user}.log</file>
    <append>true</append>
    <encoder>
      <pattern>%date [%thread] %level{5} [%file:%line] 
[requestId=%X{REQUEST_ID}] %msg%n</pattern>
    </encoder>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      
<fileNamePattern>${logdir}/ranger-admin-${hostname}-${user}.log.%d{yyyy-MM-dd}</fileNamePattern>
      <maxHistory>15</maxHistory>
      <cleanHistoryOnStart>true</cleanHistoryOnStart>
    </rollingPolicy>
  </appender>


Diffs
-----

  
security-admin/src/main/java/org/apache/ranger/security/web/filter/RangerMDCFilter.java
 PRE-CREATION 
  
security-admin/src/test/java/org/apache/ranger/security/web/filter/TestRangerMDCFilter.java
 PRE-CREATION 


Diff: https://reviews.apache.org/r/74262/diff/1/


Testing
-------


Thanks,

Ramachandran Krishnan

Reply via email to