diff --git a/apps/fwd/src/main/java/org/onosproject/fwd/ReactiveForwarding.java b/apps/fwd/src/main/java/org/onosproject/fwd/ReactiveForwarding.java
index fc7b346..7ab26d3 100644
--- a/apps/fwd/src/main/java/org/onosproject/fwd/ReactiveForwarding.java
+++ b/apps/fwd/src/main/java/org/onosproject/fwd/ReactiveForwarding.java
@@ -695,7 +695,7 @@
             if (srcHost != null && dstHost != null) {
                 DeviceId srcId = srcHost.location().deviceId();
                 DeviceId dstId = dstHost.location().deviceId();
-                log.trace("SRC ID is " + srcId + ", DST ID is " + dstId);
+                log.trace("SRC ID is {}, DST ID is {}", srcId, dstId);
 
                 cleanFlowRules(sd, egress.deviceId());
 
@@ -739,8 +739,8 @@
 
     // Removes flow rules off specified device with specific SrcDstPair
     private void cleanFlowRules(SrcDstPair pair, DeviceId id) {
-        log.trace("Searching for flow rules to remove from: " + id);
-        log.trace("Removing flows w/ SRC=" + pair.src + ", DST=" + pair.dst);
+        log.trace("Searching for flow rules to remove from: {}", id);
+        log.trace("Removing flows w/ SRC={}, DST={}", pair.src, pair.dst);
         for (FlowEntry r : flowRuleService.getFlowEntries(id)) {
             boolean matchesSrc = false, matchesDst = false;
             for (Instruction i : r.treatment().allInstructions()) {
@@ -760,7 +760,7 @@
                 }
             }
             if (matchesDst && matchesSrc) {
-                log.trace("Removed flow rule from device: " + id);
+                log.trace("Removed flow rule from device: {}", id);
                 flowRuleService.removeFlowRules((FlowRule) r);
             }
         }
diff --git a/core/net/src/main/java/org/onosproject/net/link/impl/LinkManager.java b/core/net/src/main/java/org/onosproject/net/link/impl/LinkManager.java
index 1d8ca4d..64bf8b3 100644
--- a/core/net/src/main/java/org/onosproject/net/link/impl/LinkManager.java
+++ b/core/net/src/main/java/org/onosproject/net/link/impl/LinkManager.java
@@ -260,7 +260,7 @@
             if (isAllowed(cfg) && isAllowed(cfgTwo)) {
                 return BasicLinkOperator.combine(cfg, linkDescription);
             } else {
-                log.trace("Link " + linkDescription.toString() + " is not allowed");
+                log.trace("Link {} is not allowed", linkDescription);
                 return null;
             }
         }
