PLDM: Implementing Phosphor-Logging/LG2 logging

This commit adds changes in PLDM for implementing
structured LG2 logging, thereby moving away from
std::cout/cerr practice of logging which are
output streams and not logging mechanism.

PLDM now can make use of lg2 features like accurate
CODE LINE Number and CODE_FUNCTION Name and better
detailing in json object values which can be used in
log tracking.

More detailed logging change:
https://gist.github.com/riyadixitagra/c251685c1ba84248181891f7bc282395

Tested:
Ran a power off, on, cycle, and reset-reload.

Change-Id: I0485035f15f278c3fd172f0581b053c1c37f3a5b
Signed-off-by: Riya Dixit <riyadixitagra@gmail.com>
diff --git a/fw-update/inventory_manager.cpp b/fw-update/inventory_manager.cpp
index a8ddb46..ea80e69 100644
--- a/fw-update/inventory_manager.cpp
+++ b/fw-update/inventory_manager.cpp
@@ -5,14 +5,16 @@
 
 #include <libpldm/firmware_update.h>
 
+#include <phosphor-logging/lg2.hpp>
+
 #include <functional>
 
+PHOSPHOR_LOG2_USING;
+
 namespace pldm
 {
-
 namespace fw_update
 {
-
 void InventoryManager::discoverFDs(const std::vector<mctp_eid_t>& eids)
 {
     for (const auto& eid : eids)
@@ -26,8 +28,9 @@
         if (rc)
         {
             requester.markFree(eid, instanceId);
-            std::cerr << "encode_query_device_identifiers_req failed, EID="
-                      << unsigned(eid) << ", RC=" << rc << "\n";
+            error(
+                "encode_query_device_identifiers_req failed, EID={EID}, RC = {RC}",
+                "EID", unsigned(eid), "RC", rc);
             continue;
         }
 
@@ -38,8 +41,9 @@
                                       this)));
         if (rc)
         {
-            std::cerr << "Failed to send QueryDeviceIdentifiers request, EID="
-                      << unsigned(eid) << ", RC=" << rc << "\n ";
+            error(
+                "Failed to send QueryDeviceIdentifiers request, EID={EID}, RC = {RC}",
+                "EID", unsigned(eid), "RC", rc);
         }
     }
 }
@@ -50,8 +54,8 @@
 {
     if (response == nullptr || !respMsgLen)
     {
-        std::cerr << "No response received for QueryDeviceIdentifiers, EID="
-                  << unsigned(eid) << "\n";
+        error("No response received for QueryDeviceIdentifiers, EID={EID}",
+              "EID", unsigned(eid));
         return;
     }
 
@@ -65,17 +69,17 @@
         &descriptorCount, &descriptorPtr);
     if (rc)
     {
-        std::cerr << "Decoding QueryDeviceIdentifiers response failed, EID="
-                  << unsigned(eid) << ", RC=" << rc << "\n";
+        error(
+            "Decoding QueryDeviceIdentifiers response failed, EID={EID}, RC = {RC}",
+            "EID", unsigned(eid), "RC", rc);
         return;
     }
 
     if (completionCode)
     {
-        std::cerr << "QueryDeviceIdentifiers response failed with error "
-                     "completion code, EID="
-                  << unsigned(eid) << ", CC=" << unsigned(completionCode)
-                  << "\n";
+        error(
+            "QueryDeviceIdentifiers response failed with error completion code, EID={EID}, CC = {CC}",
+            "EID", unsigned(eid), "CC", unsigned(completionCode));
         return;
     }
 
@@ -90,9 +94,9 @@
             &descriptorData);
         if (rc)
         {
-            std::cerr
-                << "Decoding descriptor type, length and value failed, EID="
-                << unsigned(eid) << ", RC=" << rc << "\n ";
+            error(
+                "Decoding descriptor type, length and value failed, EID={EID}, RC = {RC}",
+                "EID", unsigned(eid), "RC", rc);
             return;
         }
 
@@ -114,9 +118,9 @@
                 &vendorDefinedDescriptorData);
             if (rc)
             {
-                std::cerr
-                    << "Decoding Vendor-defined descriptor value failed, EID="
-                    << unsigned(eid) << ", RC=" << rc << "\n ";
+                error(
+                    "Decoding Vendor-defined descriptor value failed, EID={EID}, RC = {RC}",
+                    "EID", unsigned(eid), "RC", rc);
                 return;
             }
 
@@ -155,8 +159,8 @@
     if (rc)
     {
         requester.markFree(eid, instanceId);
-        std::cerr << "encode_get_firmware_parameters_req failed, EID="
-                  << unsigned(eid) << ", RC=" << rc << "\n";
+        error("encode_get_firmware_parameters_req failed, EID={EID}, RC = {RC}",
+              "EID", unsigned(eid), "RC", rc);
         return;
     }
 
@@ -167,8 +171,9 @@
             std::bind_front(&InventoryManager::getFirmwareParameters, this)));
     if (rc)
     {
-        std::cerr << "Failed to send GetFirmwareParameters request, EID="
-                  << unsigned(eid) << ", RC=" << rc << "\n ";
+        error(
+            "Failed to send GetFirmwareParameters request, EID={EID}, RC = {RC}",
+            "EID", unsigned(eid), "RC", rc);
     }
 }
 
@@ -178,8 +183,8 @@
 {
     if (response == nullptr || !respMsgLen)
     {
-        std::cerr << "No response received for GetFirmwareParameters, EID="
-                  << unsigned(eid) << "\n";
+        error("No response received for GetFirmwareParameters, EID={EID}",
+              "EID", unsigned(eid));
         descriptorMap.erase(eid);
         return;
     }
@@ -194,17 +199,17 @@
         &pendingCompImageSetVerStr, &compParamTable);
     if (rc)
     {
-        std::cerr << "Decoding GetFirmwareParameters response failed, EID="
-                  << unsigned(eid) << ", RC=" << rc << "\n";
+        error(
+            "Decoding GetFirmwareParameters response failed, EID={EID}, RC = {RC}",
+            "EID", unsigned(eid), "RC", rc);
         return;
     }
 
     if (fwParams.completion_code)
     {
-        std::cerr << "GetFirmwareParameters response failed with error "
-                     "completion code, EID="
-                  << unsigned(eid)
-                  << ", CC=" << unsigned(fwParams.completion_code) << "\n";
+        error(
+            "GetFirmwareParameters response failed with error completion code, EID={EID}, CC = {CC}",
+            "EID", unsigned(eid), "CC", unsigned(fwParams.completion_code));
         return;
     }
 
@@ -222,8 +227,9 @@
             &pendingCompVerStr);
         if (rc)
         {
-            std::cerr << "Decoding component parameter table entry failed, EID="
-                      << unsigned(eid) << ", RC=" << rc << "\n";
+            error(
+                "Decoding component parameter table entry failed, EID={EID}, RC = {RC}",
+                "EID", unsigned(eid), "RC", rc);
             return;
         }
 
@@ -242,4 +248,4 @@
 
 } // namespace fw_update
 
-} // namespace pldm
\ No newline at end of file
+} // namespace pldm