This is an automated email from the ASF dual-hosted git repository. oleewere pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/ambari-logsearch.git
The following commit(s) were added to refs/heads/master by this push: new defc854 AMBARI-24833. Let logfeeder.properties override core-site configs. (#30) defc854 is described below commit defc854b8d1948745a07a1a6e07322670ffef340 Author: Olivér Szabó <oleew...@gmail.com> AuthorDate: Mon Nov 19 21:49:56 2018 +0100 AMBARI-24833. Let logfeeder.properties override core-site configs. (#30) --- .../output/cloud/upload/HDFSS3UploadClient.java | 1 + .../output/cloud/upload/HDFSUploadClient.java | 1 + .../ambari/logfeeder/util/LogFeederHDFSUtil.java | 19 +++++++++++++++++++ .../src/main/resources/logfeeder.properties | 2 ++ 4 files changed, 23 insertions(+) diff --git a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSS3UploadClient.java b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSS3UploadClient.java index 5405a10..df1b8a5 100644 --- a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSS3UploadClient.java +++ b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSS3UploadClient.java @@ -57,6 +57,7 @@ public class HDFSS3UploadClient extends AbstractS3CloudClient implements UploadC conf.set("fs.s3a.endpoint", s3OutputConfig.getEndpoint()); conf.set("fs.s3a.path.style.access", String.valueOf(s3OutputConfig.isPathStyleAccess())); conf.set("fs.s3a.multiobjectdelete.enable", String.valueOf(s3OutputConfig.isMultiobjectDeleteEnable())); + LogFeederHDFSUtil.overrideFileSystemConfigs(logFeederProps, conf); this.fs = LogFeederHDFSUtil.buildFileSystem(conf); } diff --git a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSUploadClient.java b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSUploadClient.java index 421c4c5..7e1b471 100644 --- a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSUploadClient.java +++ b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/output/cloud/upload/HDFSUploadClient.java @@ -84,6 +84,7 @@ public class HDFSUploadClient implements UploadClient { } } logger.info("HDFS client - will use '{}' permission for uploaded files", hdfsOutputConfig.getHdfsFilePermissions()); + LogFeederHDFSUtil.overrideFileSystemConfigs(logFeederProps, configuration); this.fs = LogFeederHDFSUtil.buildFileSystem(configuration); } diff --git a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/util/LogFeederHDFSUtil.java b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/util/LogFeederHDFSUtil.java index 3549e04..b741229 100644 --- a/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/util/LogFeederHDFSUtil.java +++ b/ambari-logsearch-logfeeder/src/main/java/org/apache/ambari/logfeeder/util/LogFeederHDFSUtil.java @@ -19,7 +19,10 @@ package org.apache.ambari.logfeeder.util; import java.io.IOException; +import java.util.Map; +import java.util.Properties; +import org.apache.ambari.logfeeder.conf.LogFeederProps; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; @@ -95,4 +98,20 @@ public class LogFeederHDFSUtil { } } } + + /** + * Override Hadoop configuration object based on logfeeder.properties configurations (with keys that starts with "fs." or "hadoop.*") + * @param logFeederProps global property holder + * @param configuration hadoop configuration holder + */ + public static void overrideFileSystemConfigs(LogFeederProps logFeederProps, Configuration configuration) { + Properties properties = logFeederProps.getProperties(); + for (Map.Entry<Object, Object> prop : properties.entrySet()) { + String propertyName = prop.getKey().toString(); + if (propertyName.startsWith("fs.")) { + logger.info("Override {} configuration (by logfeeder.properties)", propertyName); + configuration.set(propertyName, prop.getValue().toString()); + } + } + } } \ No newline at end of file diff --git a/ambari-logsearch-logfeeder/src/main/resources/logfeeder.properties b/ambari-logsearch-logfeeder/src/main/resources/logfeeder.properties index 45c05f3..2537913 100644 --- a/ambari-logsearch-logfeeder/src/main/resources/logfeeder.properties +++ b/ambari-logsearch-logfeeder/src/main/resources/logfeeder.properties @@ -68,3 +68,5 @@ logfeeder.s3.access.key=MyAccessKey logfeeder.s3.object.acl=public-read logfeeder.s3.path.style.access=true logfeeder.s3.multiobject.delete.enable=false + +fs.s3a.acl.default=PublicReadWrite