diff --git a/apps/routing/fpm/app/src/main/java/org/onosproject/routing/fpm/FpmManager.java b/apps/routing/fpm/app/src/main/java/org/onosproject/routing/fpm/FpmManager.java
index 4deaebb..351cb27 100644
--- a/apps/routing/fpm/app/src/main/java/org/onosproject/routing/fpm/FpmManager.java
+++ b/apps/routing/fpm/app/src/main/java/org/onosproject/routing/fpm/FpmManager.java
@@ -287,7 +287,7 @@
                 if (strPdPushNextHopIPv4 != null) {
                     List<String> strPdPushNextHopIPv4List = Arrays.asList(strPdPushNextHopIPv4.split(","));
                     for (String nextHop : strPdPushNextHopIPv4List) {
-                        log.debug("IPv4 next hop added is:" + nextHop);
+                        log.trace("IPv4 next hop added is:" + nextHop);
                         pdPushNextHopIPv4.add(Ip4Address.valueOf(nextHop));
                     }
                 }
@@ -295,7 +295,7 @@
                 if (strPdPushNextHopIPv6 != null) {
                     List<String> strPdPushNextHopIPv6List = Arrays.asList(strPdPushNextHopIPv6.split(","));
                     for (String nextHop : strPdPushNextHopIPv6List) {
-                        log.debug("IPv6 next hop added is:" + nextHop);
+                        log.trace("IPv6 next hop added is:" + nextHop);
                         pdPushNextHopIPv6.add(Ip6Address.valueOf(nextHop));
                     }
                 }
