Repository: incubator-ranger
Updated Branches:
  refs/heads/master 1e3e53f4c -> ffb895e2c


RANGER-809:Audit framework need to cache the getHostName() values to reuse for 
successive calls


Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/ffb895e2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/ffb895e2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/ffb895e2

Branch: refs/heads/master
Commit: ffb895e2c2fd522a69018aff6e7bc6b322b46a69
Parents: 1e3e53f
Author: rmani <[email protected]>
Authored: Tue Jan 12 15:54:12 2016 -0800
Committer: rmani <[email protected]>
Committed: Tue Jan 12 15:54:12 2016 -0800

----------------------------------------------------------------------
 .../apache/ranger/audit/provider/MiscUtil.java  | 32 +++++++++++++++++---
 1 file changed, 27 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/ffb895e2/agents-audit/src/main/java/org/apache/ranger/audit/provider/MiscUtil.java
----------------------------------------------------------------------
diff --git 
a/agents-audit/src/main/java/org/apache/ranger/audit/provider/MiscUtil.java 
b/agents-audit/src/main/java/org/apache/ranger/audit/provider/MiscUtil.java
index 9586f73..f19c885 100644
--- a/agents-audit/src/main/java/org/apache/ranger/audit/provider/MiscUtil.java
+++ b/agents-audit/src/main/java/org/apache/ranger/audit/provider/MiscUtil.java
@@ -73,6 +73,7 @@ public class MiscUtil {
        private static String sApplicationType = null;
        private static UserGroupInformation ugiLoginUser = null;
        private static Subject subjectLoginUser = null;
+       private static String local_hostname = null ;
 
        private static Map<String, LogHistory> logHistoryList = new 
Hashtable<String, LogHistory>();
        private static int logInterval = 30000; // 30 seconds
@@ -86,6 +87,8 @@ public class MiscUtil {
                                        "failed to create GsonBuilder object. 
stringigy() will return obj.toString(), instead of Json",
                                        excp);
                }
+
+               initLocalHost();
        }
 
        public static String replaceTokens(String str, long time) {
@@ -153,12 +156,16 @@ public class MiscUtil {
        }
 
        public static String getHostname() {
-               String ret = null;
+               String ret = local_hostname;
 
-               try {
-                       ret = InetAddress.getLocalHost().getHostName();
-               } catch (Exception excp) {
-                       LogLog.warn("getHostname()", excp);
+               if  (ret == null) {
+                       initLocalHost();
+
+                       ret = local_hostname;
+
+                       if (ret == null) {
+                               ret = "unknown";
+                       }
                }
 
                return ret;
@@ -761,4 +768,19 @@ public class MiscUtil {
                }
        }
 
+       private static  void initLocalHost() {
+               if ( logger.isDebugEnabled() ) {
+                       logger.debug("==> MiscUti.initLocalHost()");
+               }
+
+               try {
+                       local_hostname = 
InetAddress.getLocalHost().getHostName();
+               } catch (Throwable excp) {
+                       LogLog.warn("getHostname()", excp);
+               }
+               if ( logger.isDebugEnabled() ) {
+                       logger.debug("<== MiscUti.initLocalHost()");
+               }
+       }
+
 }

Reply via email to