diff --git a/dbus/dbusconfiguration.cpp b/dbus/dbusconfiguration.cpp
index 66ef7f8..96d2b4b 100644
--- a/dbus/dbusconfiguration.cpp
+++ b/dbus/dbusconfiguration.cpp
@@ -158,8 +158,9 @@
     }
 
     // we skip associations because the mapper populates these, not the sensors
-    const std::array<const char*, 1> skipList = {
-        "xyz.openbmc_project.Association"};
+    const std::array<const char*, 2> skipList = {
+        "xyz.openbmc_project.Association",
+        "xyz.openbmc_project.Association.Definitions"};
 
     sdbusplus::message_t message(m);
     if (std::string(message.get_member()) == "InterfacesAdded")
@@ -184,6 +185,19 @@
                 }
             }
         }
+
+        if constexpr (pid_control::conf::DEBUG)
+        {
+            std::cout << "New config detected: " << path.str << std::endl;
+            for (auto& d : data)
+            {
+                std::cout << "\tdata is " << d.first << std::endl;
+                for (auto& second : d.second)
+                {
+                    std::cout << "\t\tdata is " << second.first << std::endl;
+                }
+            }
+        }
     }
 
     boost::asio::steady_timer* timer =
