diff --git a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java b/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java
index d02742dc987b8ea3e3d633e064748a53645e19a3..1931514123e602d8f5791f385ebd312621abd054 100755
--- a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java
+++ b/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java
@@ -1076,9 +1076,9 @@ IFlowReconcileListener, IInfoProvider, IHAListener {
                     deviceKey = Long.valueOf(deviceKeyCounter++);
                 }
                 device = allocateDevice(deviceKey, entity, entityClass);
-                if (logger.isTraceEnabled()) {
-                    logger.trace("New device created: {} deviceKey={}", 
-                                 device, deviceKey);
+                if (logger.isDebugEnabled()) {
+                    logger.debug("New device created: {} deviceKey={}, entity={}",
+                                 new Object[]{device, deviceKey, entity});
                 }
 
                 // Add the new device to the primary map with a simple put
@@ -1112,12 +1112,26 @@ IFlowReconcileListener, IInfoProvider, IHAListener {
                         device.entities[entityindex].getSwitchPort() != null) {
                     long sw = device.entities[entityindex].getSwitchDPID();
                     short port = device.entities[entityindex].getSwitchPort().shortValue();
+
                     boolean moved =
                             device.updateAttachmentPoint(sw,
                                                          port,
                                                          lastSeen.getTime());
-                    if (moved)
-                        sendDeviceMovedNotification(device);;
+
+                    if (moved) {
+                        sendDeviceMovedNotification(device);
+                        if (logger.isDebugEnabled()) {
+                            logger.debug("Device moved: attachment points {}," +
+                                    "entities {}", device.attachmentPoints,
+                                    device.entities);
+                        }
+                    } else {
+                        if (logger.isDebugEnabled()) {
+                            logger.debug("Device attachment point udpated: attachment points {}," +
+                                    "entities {}", device.attachmentPoints,
+                                    device.entities);
+                        }
+                    }
                 }
                 break;
             } else {
@@ -1127,7 +1141,20 @@ IFlowReconcileListener, IInfoProvider, IHAListener {
                             newDevice.updateAttachmentPoint(entity.getSwitchDPID(),
                                                             entity.getSwitchPort().shortValue(),
                                                             entity.getLastSeenTimestamp().getTime());
-                    if (moved) sendDeviceMovedNotification(newDevice);
+                    if (moved) {
+                        sendDeviceMovedNotification(device);
+                        if (logger.isDebugEnabled()) {
+                            logger.debug("Device moved: attachment points {}," +
+                                    "entities {}", device.attachmentPoints,
+                                    device.entities);
+                        }
+                    } else {
+                        if (logger.isDebugEnabled()) {
+                            logger.debug("Device attachment point udpated: attachment points {}," +
+                                    "entities {}", device.attachmentPoints,
+                                    device.entities);
+                        }
+                    }
                 }
 
                 // generate updates
@@ -1604,11 +1631,13 @@ IFlowReconcileListener, IInfoProvider, IHAListener {
             }
         }
 
+        logger.debug("Triggering update to attachment points due to topology change.");
+
         while (diter.hasNext()) {
             Device d = diter.next();
             if (d.updateAttachmentPoint()) {
-                if (logger.isTraceEnabled()) {
-                    logger.trace("Attachment point changed for device: {}", d);
+                if (logger.isDebugEnabled()) {
+                    logger.debug("Attachment point changed for device: {}", d);
                 }
                 sendDeviceMovedNotification(d);
             }
diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
index f4b5dc3bd0f7baa7e4d05c27408fd4964de0e43c..a9d8c7b167fe8e70dc16362e874273ea3361a035 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
+++ b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
@@ -1581,11 +1581,11 @@ IFloodlightModule, IInfoProvider, IHAListener {
                         // null role implies HA mode is not enabled.
                          Role role = floodlightProvider.getRole();
                          if (role == null || role == Role.MASTER) {
-                             log.debug("Rescheduling discovery task as role = {}", role);
+                             log.trace("Rescheduling discovery task as role = {}", role);
                              discoveryTask.reschedule(DISCOVERY_TASK_INTERVAL,
                                                 TimeUnit.SECONDS);
                          } else {
-                             log.debug("Stopped LLDP rescheduling due to role = {}.", role);
+                             log.trace("Stopped LLDP rescheduling due to role = {}.", role);
                          }
                     }
                 }
@@ -1608,10 +1608,10 @@ IFloodlightModule, IInfoProvider, IHAListener {
         // null role implies HA mode is not enabled.
         Role role = floodlightProvider.getRole();
         if (role == null || role == Role.MASTER) {
-            log.debug("Setup: Rescheduling discovery task. role = {}", role);
+            log.trace("Setup: Rescheduling discovery task. role = {}", role);
             discoveryTask.reschedule(DISCOVERY_TASK_INTERVAL, TimeUnit.SECONDS);
         } else {
-                log.debug("Setup: Not scheduling LLDP as role = {}.", role);
+                log.trace("Setup: Not scheduling LLDP as role = {}.", role);
         }
         // Register for the OpenFlow messages we want to receive
         floodlightProvider.addOFMessageListener(OFType.PACKET_IN, this);