This is an automated email from the ASF dual-hosted git repository.
dhavalshah9131 pushed a commit to branch ranger-2.2
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/ranger-2.2 by this push:
new 668ca16 RANGER-3242 : Need feature to make the access log file name
configurable for user
668ca16 is described below
commit 668ca16b1455d379e834ca0d1102f48a8ec7e68e
Author: Vishal Suvagia <[email protected]>
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);