This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to annotated tag org.apache.sling.tracer-1.0.2 in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-tracer.git
commit 0406840151babe782a5a004f183fe04f7feec630 Author: Chetan Mehrotra <[email protected]> AuthorDate: Sat Oct 8 10:22:02 2016 +0000 SLING-6120 - Collect logger names which get hit for a given request thread git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/contrib/extensions/tracer@1763885 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/sling/tracer/internal/JSONRecording.java | 20 ++++++++++++++++++++ .../org/apache/sling/tracer/internal/LogTracer.java | 2 ++ .../org/apache/sling/tracer/internal/Recording.java | 7 +++++++ .../apache/sling/tracer/internal/TracerContext.java | 4 ++++ 4 files changed, 33 insertions(+) diff --git a/src/main/java/org/apache/sling/tracer/internal/JSONRecording.java b/src/main/java/org/apache/sling/tracer/internal/JSONRecording.java index 1a7b654..56c1804 100644 --- a/src/main/java/org/apache/sling/tracer/internal/JSONRecording.java +++ b/src/main/java/org/apache/sling/tracer/internal/JSONRecording.java @@ -33,8 +33,10 @@ import java.io.UnsupportedEncodingException; import java.io.Writer; import java.util.ArrayList; import java.util.Collections; +import java.util.HashSet; import java.util.Iterator; import java.util.List; +import java.util.Set; import java.util.zip.GZIPInputStream; import java.util.zip.GZIPOutputStream; @@ -70,6 +72,7 @@ class JSONRecording implements Recording, Comparable<JSONRecording> { private final boolean compress; private final List<QueryEntry> queries = new ArrayList<QueryEntry>(); private final List<LogEntry> logs = new ArrayList<LogEntry>(); + private final Set<String> loggerNames = new HashSet<String>(); private RequestProgressTracker tracker; private byte[] json; private final long start = System.currentTimeMillis(); @@ -139,6 +142,11 @@ class JSONRecording implements Recording, Comparable<JSONRecording> { this.tracker = tracker; } + @Override + public void recordCategory(String loggerName) { + loggerNames.add(loggerName); + } + public void done() { try { if (json == null) { @@ -181,12 +189,24 @@ class JSONRecording implements Recording, Comparable<JSONRecording> { addJson(jw, "queries", queries); addJson(jw, "logs", logs); + addLoggerNames(jw); jw.endObject(); osw.flush(); os.close(); return baos.toByteArray(); } + private void addLoggerNames(JSONWriter jw) throws JSONException { + List<String> sortedNames = new ArrayList<String>(loggerNames); + Collections.sort(sortedNames); + jw.key("loggerNames"); + jw.array(); + for (String o : sortedNames) { + jw.value(o); + } + jw.endArray(); + } + private void addRequestProgressLogs(JSONWriter jw) throws JSONException { if (tracker != null) { jw.key("requestProgressLogs"); diff --git a/src/main/java/org/apache/sling/tracer/internal/LogTracer.java b/src/main/java/org/apache/sling/tracer/internal/LogTracer.java index c95d7fd..9f38a65 100644 --- a/src/main/java/org/apache/sling/tracer/internal/LogTracer.java +++ b/src/main/java/org/apache/sling/tracer/internal/LogTracer.java @@ -431,6 +431,8 @@ public class LogTracer { return FilterReply.NEUTRAL; } + tracer.recordCategory(logger.getName()); + TracerConfig tc = tracer.findMatchingConfig(logger.getName(), level); if (tc != null) { if (format == null) { diff --git a/src/main/java/org/apache/sling/tracer/internal/Recording.java b/src/main/java/org/apache/sling/tracer/internal/Recording.java index e7300c5..604652a 100644 --- a/src/main/java/org/apache/sling/tracer/internal/Recording.java +++ b/src/main/java/org/apache/sling/tracer/internal/Recording.java @@ -34,6 +34,11 @@ interface Recording { public void registerTracker(RequestProgressTracker tracker) { } + + @Override + public void recordCategory(String loggerName) { + + } }; void log(TracerConfig tc, Level level, String logger, FormattingTuple tuple); @@ -44,4 +49,6 @@ interface Recording { * @param tracker from current request */ void registerTracker(RequestProgressTracker tracker); + + void recordCategory(String loggerName); } diff --git a/src/main/java/org/apache/sling/tracer/internal/TracerContext.java b/src/main/java/org/apache/sling/tracer/internal/TracerContext.java index 5859bce..0474662 100644 --- a/src/main/java/org/apache/sling/tracer/internal/TracerContext.java +++ b/src/main/java/org/apache/sling/tracer/internal/TracerContext.java @@ -103,6 +103,10 @@ class TracerContext { return tuple != null; } + public void recordCategory(String loggerName) { + recording.recordCategory(loggerName); + } + public void done() { if (queryCount > 0) { progressTracker.log("JCR Query Count {0}", queryCount); -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
