You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2016/04/10 11:38:08 UTC
karaf-decanter git commit: [KARAF-4481] Check ignored log events
earlier in the log appender
Repository: karaf-decanter
Updated Branches:
refs/heads/master 41e8b2526 -> 302743157
[KARAF-4481] Check ignored log events earlier in the log appender
Project: http://git-wip-us.apache.org/repos/asf/karaf-decanter/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf-decanter/commit/30274315
Tree: http://git-wip-us.apache.org/repos/asf/karaf-decanter/tree/30274315
Diff: http://git-wip-us.apache.org/repos/asf/karaf-decanter/diff/30274315
Branch: refs/heads/master
Commit: 30274315700213676d1de0afb5f38adc49c75c22
Parents: 41e8b25
Author: Jean-Baptiste Onofré <jb...@apache.org>
Authored: Sun Apr 10 11:37:34 2016 +0200
Committer: Jean-Baptiste Onofré <jb...@apache.org>
Committed: Sun Apr 10 11:37:34 2016 +0200
----------------------------------------------------------------------
.../decanter/collector/log/LogAppender.java | 25 +++++++++++++-------
1 file changed, 16 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/30274315/collector/log/src/main/java/org/apache/karaf/decanter/collector/log/LogAppender.java
----------------------------------------------------------------------
diff --git a/collector/log/src/main/java/org/apache/karaf/decanter/collector/log/LogAppender.java b/collector/log/src/main/java/org/apache/karaf/decanter/collector/log/LogAppender.java
index cc3d321..3d0425d 100644
--- a/collector/log/src/main/java/org/apache/karaf/decanter/collector/log/LogAppender.java
+++ b/collector/log/src/main/java/org/apache/karaf/decanter/collector/log/LogAppender.java
@@ -41,6 +41,7 @@ import org.slf4j.LoggerFactory;
immediate = true
)
public class LogAppender implements PaxAppender {
+
private static final String MDC_IN_LOG_APPENDER = "inLogAppender";
private final static String[] ignoredCategories = {"org.apache.karaf.decanter"};
private final static Logger LOGGER = LoggerFactory.getLogger(LogAppender.class);
@@ -62,7 +63,12 @@ public class LogAppender implements PaxAppender {
}
private void appendInternal(PaxLoggingEvent event) throws Exception {
- LOGGER.debug("Karaf Decanter Log Collector hooked ...");
+ if (isIgnored(event.getLoggerName())) {
+ LOGGER.debug("{} logger is ignored by the log collector", event.getLoggerName());
+ return;
+ }
+
+ LOGGER.debug("Publishing log event to the appenders ...");
Map<String, Object> data = new HashMap<>();
data.put("type", "log");
@@ -83,19 +89,17 @@ public class LogAppender implements PaxAppender {
data.put("renderedMessage", event.getRenderedMessage());
data.put("MDC", event.getProperties());
putLocation(data, event.getLocationInformation());
- String[] throwableAr = event.getThrowableStrRep();
+ String[] throwableAr = event.getThrowableStrRep();
if (throwableAr != null) {
data.put("throwable", join(throwableAr));
}
- if (!isIgnored(event.getLoggerName())) {
- String loggerName = event.getLoggerName();
- if (loggerName == null || loggerName.isEmpty()) {
- loggerName = "default";
- }
- String topic = "decanter/collect/log/" + loggerName.replace(".", "/").replace(" ", "_").replace("{", "_").replace("}", "_").replace("$", "_");
- this.dispatcher.postEvent(new Event(topic, data));
+ String loggerName = event.getLoggerName();
+ if (loggerName == null || loggerName.isEmpty()) {
+ loggerName = "default";
}
+ String topic = "decanter/collect/log/" + loggerName.replace(".", "/").replace(" ", "_").replace("{", "_").replace("}", "_").replace("$", "_");
+ this.dispatcher.postEvent(new Event(topic, data));
}
private void putLocation(Map<String, Object> data, PaxLocationInfo loc) {
@@ -114,6 +118,9 @@ public class LogAppender implements PaxAppender {
}
private boolean isIgnored(String loggerName) {
+ if (loggerName == null) {
+ return true;
+ }
for (String cat : ignoredCategories) {
if (loggerName.startsWith(cat)) {
return true;