This is an automated email from the ASF dual-hosted git repository. pradeep pushed a commit to branch ranger-2.3 in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/ranger-2.3 by this push: new c6d8de7bf RANGER-3705: Improve logging messages to help debug potential issues c6d8de7bf is described below commit c6d8de7bf6e74ea425f2fbb125a254828c9283cb Author: Abhay Kulkarni <ab...@apache.org> AuthorDate: Mon Apr 11 18:36:35 2022 -0700 RANGER-3705: Improve logging messages to help debug potential issues --- .../RangerServiceResourceMatcher.java | 5 ++++ .../plugin/policyengine/RangerResourceTrie.java | 31 +++++++++++----------- .../ranger/plugin/service/RangerBasePlugin.java | 10 +++++++ 3 files changed, 30 insertions(+), 16 deletions(-) diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerServiceResourceMatcher.java b/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerServiceResourceMatcher.java index 7b02dd6e1..9433ae1da 100644 --- a/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerServiceResourceMatcher.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerServiceResourceMatcher.java @@ -80,4 +80,9 @@ public class RangerServiceResourceMatcher implements RangerPolicyResourceEvaluat return Long.compare(me.getId(), other.getId()); } } + + @Override + public String toString() { + return String.valueOf(getId()); + } } diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerResourceTrie.java b/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerResourceTrie.java index 331d6371d..70b9f6884 100644 --- a/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerResourceTrie.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerResourceTrie.java @@ -35,6 +35,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; @@ -94,9 +95,7 @@ public class RangerResourceTrie<T extends RangerPolicyResourceEvaluator> { } if (TRACE_LOG.isTraceEnabled()) { - StringBuilder sb = new StringBuilder(); - root.toString("", sb); - TRACE_LOG.trace("Trie Dump from RangerResourceTrie.copyTrie(name=" + other.resourceDef.getName() + "):\n{" + sb.toString() + "}"); + TRACE_LOG.trace("Trie Dump from RangerResourceTrie.copyTrie(name=" + other.resourceDef.getName() + "):\n[" + dumpTrie() + "]"); } } @@ -170,9 +169,7 @@ public class RangerResourceTrie<T extends RangerPolicyResourceEvaluator> { } if (TRACE_LOG.isTraceEnabled()) { - StringBuilder sb = new StringBuilder(); - root.toString("", sb); - TRACE_LOG.trace("Trie Dump from RangerResourceTrie.init(name=" + resourceDef.getName() + "):\n{" + sb.toString() + "}"); + TRACE_LOG.trace("Trie Dump from RangerResourceTrie.init(name=" + resourceDef.getName() + "):\n[" + dumpTrie() + "]"); } if(LOG.isDebugEnabled()) { @@ -231,9 +228,7 @@ public class RangerResourceTrie<T extends RangerPolicyResourceEvaluator> { RangerPerfTracer.logAlways(perf); if (TRACE_LOG.isTraceEnabled()) { - StringBuilder sb = new StringBuilder(); - root.toString("", sb); - TRACE_LOG.trace("Trie Dump from RangerResourceTrie.add(name=" + resource + "):\n{" + sb.toString() + "}"); + TRACE_LOG.trace("Trie Dump from RangerResourceTrie.add(name=" + resource + "):\n[" + dumpTrie() + "]"); } } @@ -262,9 +257,7 @@ public class RangerResourceTrie<T extends RangerPolicyResourceEvaluator> { RangerPerfTracer.logAlways(perf); if (TRACE_LOG.isTraceEnabled()) { - StringBuilder sb = new StringBuilder(); - root.toString("", sb); - TRACE_LOG.trace("Trie Dump from RangerResourceTrie.delete(name=" + resource + "):\n{" + sb.toString() + "}"); + TRACE_LOG.trace("Trie Dump from RangerResourceTrie.delete(name=" + resource + "):\n[" + dumpTrie()+ "]"); } } @@ -272,13 +265,19 @@ public class RangerResourceTrie<T extends RangerPolicyResourceEvaluator> { if (root != null) { root.wrapUpUpdate(); if (TRACE_LOG.isTraceEnabled()) { - StringBuilder sb = new StringBuilder(); - root.toString("", sb); - TRACE_LOG.trace("Trie Dump from RangerResourceTrie.wrapUpUpdate(name=" + resourceDef.getName() + "):\n{" + sb.toString() + "}"); + TRACE_LOG.trace("Trie Dump from RangerResourceTrie.wrapUpUpdate(name=" + resourceDef.getName() + "):\n[" + dumpTrie() + "]"); } } } + public StringBuilder dumpTrie() { + StringBuilder sb = new StringBuilder(); + if (root != null) { + root.toString("", sb); + } + return sb; + } + TrieNode<T> getRoot() { return root; } @@ -669,7 +668,7 @@ public class RangerResourceTrie<T extends RangerPolicyResourceEvaluator> { RangerPerfTracer.logAlways(perf); if(LOG.isDebugEnabled()) { - LOG.debug("<== RangerResourceTrie.getEvaluatorsForResource(" + resource + ", " + scope + "): evaluatorCount=" + (ret == null ? 0 : ret.size())); + LOG.debug("<== RangerResourceTrie.getEvaluatorsForResource(" + resource + ", " + scope + "): evaluators=" + (ret == null ? null : Arrays.deepToString(ret.toArray()))); } return ret; diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java b/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java index 12fecd030..8380bdafa 100644 --- a/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java @@ -454,10 +454,20 @@ public class RangerBasePlugin { if (ret != null) { for (RangerChainedPlugin chainedPlugin : chainedPlugins) { + if (LOG.isDebugEnabled()) { + LOG.debug("BasePlugin.isAccessAllowed result=[" + ret + "]"); + LOG.debug("Calling chainedPlugin.isAccessAllowed for service:[" + chainedPlugin.plugin.pluginConfig.getServiceName() + "]"); + } RangerAccessResult chainedResult = chainedPlugin.isAccessAllowed(request); if (chainedResult != null) { + if (LOG.isDebugEnabled()) { + LOG.debug("chainedPlugin.isAccessAllowed for service:[" + chainedPlugin.plugin.pluginConfig.getServiceName() + "] returned result=[" + chainedResult + "]"); + } updateResultFromChainedResult(ret, chainedResult); + if (LOG.isDebugEnabled()) { + LOG.debug("After updating result from chainedPlugin.isAccessAllowed for service:[" + chainedPlugin.plugin.pluginConfig.getServiceName() + "], result=" + ret + "]"); + } } }