You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by dh...@apache.org on 2021/04/22 09:58:50 UTC

[ranger] branch master updated: RANGER-3242 : Need feature to make the access log file name configurable for user

This is an automated email from the ASF dual-hosted git repository.

dhavalshah9131 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git


The following commit(s) were added to refs/heads/master by this push:
     new 4b7bca2  RANGER-3242 : Need feature to make the access log file name configurable for user
4b7bca2 is described below

commit 4b7bca2da5f724576eafb266405b95f5f71d3637
Author: Vishal Suvagia <vi...@apache.org>
AuthorDate: Wed Apr 14 16:53:15 2021 +0530

    RANGER-3242 : Need feature to make the access log file name configurable for user
    
    Issue:
    Currently the access log file name is hard-coded from the server and is not configurable.
    
    Changes:
    Added customizable property ranger.accesslog.prefix to make the access log prefix name configurable with default name containing the hostname.
    
    Testing:
    Tested the changes locally, access log file is created using the default configured prefix.
---
 .../main/java/org/apache/ranger/server/tomcat/EmbeddedServer.java | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/embeddedwebserver/src/main/java/org/apache/ranger/server/tomcat/EmbeddedServer.java b/embeddedwebserver/src/main/java/org/apache/ranger/server/tomcat/EmbeddedServer.java
index b1b242d..1371682 100644
--- a/embeddedwebserver/src/main/java/org/apache/ranger/server/tomcat/EmbeddedServer.java
+++ b/embeddedwebserver/src/main/java/org/apache/ranger/server/tomcat/EmbeddedServer.java
@@ -75,6 +75,9 @@ public class EmbeddedServer {
 	private static final String ADMIN_NAME_RULES = "hadoop.security.auth_to_local";
 	private static final String ADMIN_SERVER_NAME = "rangeradmin";
 	private static final String KMS_SERVER_NAME   = "rangerkms";
+	private static final String ACCESS_LOG_PREFIX = "ranger.accesslog.prefix";
+	private static final String ACCESS_LOG_DATE_FORMAT = "ranger.accesslog.dateformat";
+	private static final String ACCESS_LOG_PATTERN = "ranger.accesslog.pattern";
 	public static final String RANGER_KEYSTORE_FILE_TYPE_DEFAULT = KeyStore.getDefaultType();
 	public static final String RANGER_TRUSTSTORE_FILE_TYPE_DEFAULT = KeyStore.getDefaultType();
 	public static final String RANGER_SSL_CONTEXT_ALGO_TYPE = "TLSv1.2";
@@ -199,12 +202,13 @@ public class EmbeddedServer {
 		valve.setAsyncSupported(true);
 		valve.setBuffered(false);
 		valve.setEnabled(true);
-		valve.setFileDateFormat(EmbeddedServerUtil.getConfig("ranger.accesslog.dateformat", "yyyy-MM-dd.HH"));
+		valve.setPrefix(EmbeddedServerUtil.getConfig(ACCESS_LOG_PREFIX,"access-" + hostName +"-"));
+		valve.setFileDateFormat(EmbeddedServerUtil.getConfig(ACCESS_LOG_DATE_FORMAT, "yyyy-MM-dd.HH"));
 		valve.setDirectory(logDirectory.getAbsolutePath());
 		valve.setSuffix(".log");
 
 		String defaultAccessLogPattern = servername.equalsIgnoreCase(KMS_SERVER_NAME) ? "%h %l %u %t \"%m %U\" %s %b" : "%h %l %u %t \"%r\" %s %b";
-		String logPattern = EmbeddedServerUtil.getConfig("ranger.accesslog.pattern", defaultAccessLogPattern);
+		String logPattern = EmbeddedServerUtil.getConfig(ACCESS_LOG_PATTERN, defaultAccessLogPattern);
 		valve.setPattern(logPattern);
 
 		server.getHost().getPipeline().addValve(valve);