Instantiate VPD write logger only on first use

This commit moves out the VPD write logger's instantiation from the
constructor of Logger. As part of VPD write logger instantiation, a log
file is created, which is unnecessary until a message has to be logged.
Hence, VPD write logger is now instantiated only on first use.

Test:
'''
- Install BMC firmware image
- Delete /var/lib/vpd folder
- Restart vpd-manager service
- Observe vpd-manager service starts as expected, no error logs or PELs
  with respect to manager instantiation
'''

Change-Id: I9244cd1e8b8ce09f0bae48fed0fd548445243f60
Signed-off-by: Souvik Roy <souvikroyofficial10@gmail.com>
diff --git a/vpd-manager/src/logger.cpp b/vpd-manager/src/logger.cpp
index 7a66c16..504c3b2 100644
--- a/vpd-manager/src/logger.cpp
+++ b/vpd-manager/src/logger.cpp
@@ -37,8 +37,13 @@
                          l_log.str() + ">"
                   << std::endl;
     }
-    else if ((i_placeHolder == PlaceHolder::VPD_WRITE) && m_vpdWriteLogger)
+    else if (i_placeHolder == PlaceHolder::VPD_WRITE)
     {
+        if (!m_vpdWriteLogger)
+        {
+            m_vpdWriteLogger.reset(
+                new SyncFileLogger("/var/lib/vpd/vpdWrite.log", 128));
+        }
         m_vpdWriteLogger->logMessage(l_log.str());
     }
     else