diff --git a/vpd-manager/include/bios_handler.hpp b/vpd-manager/include/bios_handler.hpp
index 45ebba6..98887f6 100644
--- a/vpd-manager/include/bios_handler.hpp
+++ b/vpd-manager/include/bios_handler.hpp
@@ -235,15 +235,32 @@
      *
      * @param[in] i_connection - Asio connection object.
      * @param[in] i_manager - Manager object.
-     * @throw std::exception
      */
     BiosHandler(
         const std::shared_ptr<sdbusplus::asio::connection>& i_connection,
         const std::shared_ptr<Manager>& i_manager) : m_asioConn(i_connection)
     {
-        m_specificBiosHandler = std::make_shared<T>(i_manager);
+        try
+        {
+            m_specificBiosHandler = std::make_shared<T>(i_manager);
+            checkAndListenPldmService();
+        }
+        catch (std::exception& l_ex)
+        {
+            // catch any exception here itself and don't pass it to main as it
+            // will mark the service failed. Since VPD-Manager is a critical
+            // service, failing it can push BMC to quiesced state whic is not
+            // required in this case.
+            std::string l_errMsg = "Instantiation of BIOS Handler failed. { ";
+            l_errMsg += l_ex.what() + std::string(" }");
+            EventLogger::createSyncPel(
+                types::ErrorType::FirmwareError, types::SeverityType::Warning,
+                __FILE__, __FUNCTION__, 0, l_errMsg, std::nullopt, std::nullopt,
+                std::nullopt, std::nullopt);
+        }
     }
 
+  private:
     /**
      * @brief API to check if PLDM service is running and run BIOS sync.
      *
@@ -252,9 +269,8 @@
      * registers a listener to be notified when the service starts so that a
      * restore can be performed.
      */
-    void checkAndListenPldmService() noexcept;
+    void checkAndListenPldmService();
 
-  private:
     /**
      * @brief Register listener for BIOS attribute property change.
      *
