diff --git a/fault-monitor/fru-fault-monitor.cpp b/fault-monitor/fru-fault-monitor.cpp
index 35b30ec..885c020 100644
--- a/fault-monitor/fru-fault-monitor.cpp
+++ b/fault-monitor/fru-fault-monitor.cpp
@@ -68,7 +68,7 @@
     {
         mapperResponseMsg.read(mapperResponse);
     }
-    catch (const sdbusplus::exception::SdBusError& e)
+    catch (const sdbusplus::exception::exception& e)
     {
         log<level::ERR>(
             "Failed to parse getService mapper response",
@@ -132,7 +132,7 @@
     {
         bus.call_noreply(method);
     }
-    catch (const sdbusplus::exception::SdBusError& e)
+    catch (const sdbusplus::exception::exception& e)
     {
         // Log an info message, system may not have all the LED Groups defined
         log<level::INFO>("Failed to Assert LED Group",
@@ -152,7 +152,7 @@
     {
         msg.read(objectPath, interfaces);
     }
-    catch (const sdbusplus::exception::SdBusError& e)
+    catch (const sdbusplus::exception::exception& e)
     {
         log<level::ERR>("Failed to parse created message",
                         entry("ERROR=%s", e.what()),
@@ -228,7 +228,7 @@
         {
             mapperResponseMsg.read(subtree);
         }
-        catch (const sdbusplus::exception::SdBusError& e)
+        catch (const sdbusplus::exception::exception& e)
         {
             log<level::ERR>(
                 "Failed to parse existing callouts subtree message",
@@ -236,7 +236,7 @@
                 entry("REPLY_SIG=%s", mapperResponseMsg.get_signature()));
         }
     }
-    catch (const sdbusplus::exception::SdBusError& e)
+    catch (const sdbusplus::exception::exception& e)
     {
         // Just means no log entries at the moment
     }
@@ -273,7 +273,7 @@
         {
             reply.read(assoc);
         }
-        catch (const sdbusplus::exception::SdBusError& e)
+        catch (const sdbusplus::exception::exception& e)
         {
             log<level::ERR>(
                 "Failed to parse existing callouts associations message",
