Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnjum Fatima2019-02-02 09:08:30 +0000
committerAnjum Fatima2019-02-06 16:22:32 +0000
commit39a941ca4bdd208ccbc4bd96d6baac70d2e2d62c (patch)
tree6afffd48d776819be44182d17ac0076a9a9520f6
parenta77f4a30d1824d75c87079b944c67be2291feccb (diff)
downloadrt.equinox.framework-39a941ca4bdd208ccbc4bd96d6baac70d2e2d62c.tar.gz
rt.equinox.framework-39a941ca4bdd208ccbc4bd96d6baac70d2e2d62c.tar.xz
rt.equinox.framework-39a941ca4bdd208ccbc4bd96d6baac70d2e2d62c.zip
Bug 543805 - [log] Enhance the logger names for legacy event mappings
Change-Id: I998073e0eb3c0abd33f0eab194ab3cc74460ad8c Signed-off-by: Anjum Fatima <anjum.eclipse@gmail.com>
-rw-r--r--bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java2
-rw-r--r--bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java6
-rw-r--r--bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java7
-rw-r--r--bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/ExtendedLogServiceImpl.java5
-rw-r--r--bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/LogServiceManager.java19
5 files changed, 26 insertions, 13 deletions
diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java
index f71de4be6..fbed87798 100644
--- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java
+++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java
@@ -125,7 +125,7 @@ public class ExtendedLogServiceTest extends TestCase {
public void testNullLoggerLogNull() throws Exception {
log.getLogger((String) null).log(null, 0, null, null);
ExtendedLogEntry entry = listener.getEntryX();
- assertEquals("Wrong logger name.", "LogService", entry.getLoggerName());
+ assertEquals("Wrong logger name.", "LogService" + "." + bundle.getSymbolicName(), entry.getLoggerName());
assertTrue(entry.getLevel() == 0);
assertTrue(entry.getMessage() == null);
assertTrue(entry.getException() == null);
diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java
index 1f6ebcd62..f8a617d6c 100644
--- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java
+++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java
@@ -203,7 +203,7 @@ public class LogReaderServiceTest extends AbstractBundleTests {
LogListener listener = new LogListener() {
@Override
public void logged(LogEntry entry) {
- if ("Events.Framework".equals(entry.getLoggerName())) {
+ if ((entry.getLoggerName()).startsWith("Events.Framework.")) {
logEntry.set(entry);
countDown.countDown();
}
@@ -215,9 +215,12 @@ public class LogReaderServiceTest extends AbstractBundleTests {
countDown.await(5, TimeUnit.SECONDS);
ExtendedLogEntry entry = (ExtendedLogEntry) logEntry.get();
+ assertNotNull("Framework event not logged", entry);
assertTrue(entry.getLevel() == LogService.LOG_INFO);
assertEquals("Wrong level.", LogLevel.INFO, entry.getLogLevel());
assertTrue("Wrong context: " + entry.getContext(), entry.getContext() instanceof FrameworkEvent);
+ assertEquals("Wrong bundle.", getContext().getBundle(Constants.SYSTEM_BUNDLE_LOCATION), entry.getBundle());
+ assertEquals("Wrong logger name.", "Events.Framework." + entry.getBundle().getSymbolicName(), entry.getLoggerName());
}
public void testLogFrameworkEventType() throws Exception {
@@ -471,6 +474,7 @@ public class LogReaderServiceTest extends AbstractBundleTests {
LogEntry logEntry = listener.getEntryX();
assertEquals("Wrong message.", message, logEntry.getMessage());
assertEquals("Wrong bundle.", bundle, logEntry.getBundle());
+ assertEquals("Wrong logger name.", "Events.Bundle." + bundle.getSymbolicName(), logEntry.getLoggerName());
}
diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java
index 5a4f7fa43..0629f704a 100644
--- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java
+++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java
@@ -222,9 +222,10 @@ public class LogServiceTest extends TestCase {
BundleContext context = OSGiTestsActivator.getContext();
ServiceRegistration<Object> reg = context.registerService(Object.class, new Object(), null);
ServiceReference<Object> ref = reg.getReference();
+ String expectedLoggerName = "Events.Service" + "." + context.getBundle().getSymbolicName();
LogEntry entry = listener.getEntryX();
- assertEquals("Wrong logger name.", "Events.Service", entry.getLoggerName());
+ assertEquals("Wrong logger name.", expectedLoggerName, entry.getLoggerName());
assertEquals("Wrong event log level.", LogLevel.INFO, entry.getLogLevel());
assertEquals("Wrong bundle.", context.getBundle(), entry.getBundle());
assertNull("Wrong exception.", entry.getException());
@@ -234,7 +235,7 @@ public class LogServiceTest extends TestCase {
reg.setProperties(new Hashtable(Collections.singletonMap("key1", "value1")));
entry = listener.getEntryX();
- assertEquals("Wrong logger name.", "Events.Service", entry.getLoggerName());
+ assertEquals("Wrong logger name.", expectedLoggerName, entry.getLoggerName());
assertEquals("Wrong event log level.", LogLevel.DEBUG, entry.getLogLevel());
assertEquals("Wrong bundle.", context.getBundle(), entry.getBundle());
assertNull("Wrong exception.", entry.getException());
@@ -243,7 +244,7 @@ public class LogServiceTest extends TestCase {
reg.unregister();
entry = listener.getEntryX();
- assertEquals("Wrong logger name.", "Events.Service", entry.getLoggerName());
+ assertEquals("Wrong logger name.", expectedLoggerName, entry.getLoggerName());
assertEquals("Wrong event log level.", LogLevel.INFO, entry.getLogLevel());
assertEquals("Wrong bundle.", context.getBundle(), entry.getBundle());
assertNull("Wrong exception.", entry.getException());
diff --git a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/ExtendedLogServiceImpl.java b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/ExtendedLogServiceImpl.java
index 307eee608..1e2c701d5 100644
--- a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/ExtendedLogServiceImpl.java
+++ b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/ExtendedLogServiceImpl.java
@@ -26,6 +26,7 @@ public class ExtendedLogServiceImpl implements ExtendedLogService {
private final ExtendedLogServiceFactory factory;
private volatile Bundle bundle;
private final Map<Class<? extends org.osgi.service.log.Logger>, Map<String, LoggerImpl>> loggerCache = new HashMap<>();
+ private final String LOG_SERVICE = "LogService"; //$NON-NLS-1$
public ExtendedLogServiceImpl(ExtendedLogServiceFactory factory, Bundle bundle) {
this.factory = factory;
@@ -124,7 +125,9 @@ public class ExtendedLogServiceImpl implements ExtendedLogService {
@Override
public <L extends org.osgi.service.log.Logger> L getLogger(String name, Class<L> loggerType) {
if (name == null) {
- name = "LogService"; //$NON-NLS-1$
+ Bundle current = bundle;
+ String bsn = (current == null) ? null : current.getSymbolicName();
+ name = (bsn == null) ? LOG_SERVICE : LOG_SERVICE + "." + bsn; //$NON-NLS-1$
}
LoggerImpl logger = null;
Map<String, LoggerImpl> loggers = null;
diff --git a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/LogServiceManager.java b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/LogServiceManager.java
index f87007cb0..15098738f 100644
--- a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/LogServiceManager.java
+++ b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/log/LogServiceManager.java
@@ -128,8 +128,10 @@ public class LogServiceManager implements SynchronousBundleListener, FrameworkLi
@SuppressWarnings("deprecation")
public void bundleChanged(BundleEvent event) {
Bundle bundle = event.getBundle();
- if (logReaderServiceFactory.isLoggable(bundle, LOGGER_BUNDLE_EVENT, LogService.LOG_INFO)) {
- LoggerImpl logger = (LoggerImpl) systemBundleLog.getLogger(LOGGER_BUNDLE_EVENT);
+ String bsn = (bundle == null) ? null : bundle.getSymbolicName();
+ String loggerName = (bsn == null) ? LOGGER_BUNDLE_EVENT : LOGGER_BUNDLE_EVENT + "." + bsn; //$NON-NLS-1$
+ if (logReaderServiceFactory.isLoggable(bundle, loggerName, LogService.LOG_INFO)) {
+ LoggerImpl logger = (LoggerImpl) systemBundleLog.getLogger(loggerName);
int eventType = event.getType();
logger.log(bundle, event, null, LogService.LOG_INFO, getBundleEventTypeName(eventType), null, null);
}
@@ -143,10 +145,12 @@ public class LogServiceManager implements SynchronousBundleListener, FrameworkLi
ServiceReference<?> reference = event.getServiceReference();
Bundle bundle = reference.getBundle();
int eventType = event.getType();
+ String bsn = (bundle == null) ? null : bundle.getSymbolicName();
+ String loggerName = (bsn == null) ? LOGGER_SERVICE_EVENT : LOGGER_SERVICE_EVENT + "." + bsn; //$NON-NLS-1$
@SuppressWarnings("deprecation")
int logType = (eventType == ServiceEvent.MODIFIED) ? LogService.LOG_DEBUG : LogService.LOG_INFO;
- if (logReaderServiceFactory.isLoggable(bundle, LOGGER_SERVICE_EVENT, logType)) {
- LoggerImpl logger = (LoggerImpl) systemBundleLog.getLogger(LOGGER_SERVICE_EVENT);
+ if (logReaderServiceFactory.isLoggable(bundle, loggerName, logType)) {
+ LoggerImpl logger = (LoggerImpl) systemBundleLog.getLogger(loggerName);
logger.log(bundle, event, null, logType, getServiceEventTypeName(eventType), reference, null);
}
}
@@ -171,9 +175,10 @@ public class LogServiceManager implements SynchronousBundleListener, FrameworkLi
logType = LogService.LOG_INFO;
break;
}
-
- if (logReaderServiceFactory.isLoggable(bundle, LOGGER_FRAMEWORK_EVENT, logType)) {
- LoggerImpl logger = (LoggerImpl) systemBundleLog.getLogger(LOGGER_FRAMEWORK_EVENT);
+ String bsn = (bundle == null) ? null : bundle.getSymbolicName();
+ String loggerName = (bsn == null) ? LOGGER_FRAMEWORK_EVENT : LOGGER_FRAMEWORK_EVENT + "." + bsn; //$NON-NLS-1$
+ if (logReaderServiceFactory.isLoggable(bundle, loggerName, logType)) {
+ LoggerImpl logger = (LoggerImpl) systemBundleLog.getLogger(loggerName);
logger.log(bundle, event, null, logType, getFrameworkEventTypeName(eventType), null, event.getThrowable());
}
}

Back to the top