diff --git a/oem/ampere/event/oem_event_manager.cpp b/oem/ampere/event/oem_event_manager.cpp
index fe0021b..cf8e1ab 100644
--- a/oem/ampere/event/oem_event_manager.cpp
+++ b/oem/ampere/event/oem_event_manager.cpp
@@ -85,7 +85,8 @@
     {PCI_A_VR_STATE, "PCI_A_VR_STATE"},
     {PCIE_HOT_PLUG, "PCIE_HOT_PLUG"},
     {BOOT_OVERALL, "BOOT_OVERALL"},
-    {SOC_HEALTH_AVAILABILITY, "SOC_HEALTH_AVAILABILITY"}};
+    {SOC_HEALTH_AVAILABILITY, "SOC_HEALTH_AVAILABILITY"},
+    {WATCH_DOG, "WATCH_DOG"}};
 
 /*
     A map between the boot stages and logging strings.
@@ -201,7 +202,17 @@
           {"SoC Availability",
            {{1, {log_level::OK, "Enabled"}},
             {2, {log_level::WARNING, "Disabled"}},
-            {3, {log_level::CRITICAL, "Shutdown"}}}}}}};
+            {3, {log_level::CRITICAL, "Shutdown"}}}}}},
+        {WATCH_DOG,
+         {{"Global Watch Dog",
+           {{1, {log_level::OK, "Normal"}},
+            {2, {log_level::CRITICAL, "Timer Expired"}}}},
+          {"Secure Watch Dog",
+           {{1, {log_level::OK, "Normal"}},
+            {2, {log_level::CRITICAL, "Timer Expired"}}}},
+          {"Non-secure Watch Dog",
+           {{1, {log_level::OK, "Normal"}},
+            {2, {log_level::CRITICAL, "Timer Expired"}}}}}}};
 
 std::string
     OemEventManager::prefixMsgStrCreation(pldm_tid_t tid, uint16_t sensorId)
@@ -402,6 +413,9 @@
         case PCI_A_VR_STATE:
             handleVRDStatusEvent(tid, sensorId, presentReading);
             break;
+        case WATCH_DOG:
+            handleNumericWatchdogEvent(tid, sensorId, presentReading);
+            break;
         default:
             std::string description;
             std::stringstream strStream;
@@ -850,5 +864,30 @@
     sendJournalRedfish(description, logLevel);
 }
 
+void OemEventManager::handleNumericWatchdogEvent(
+    pldm_tid_t tid, uint16_t sensorId, uint32_t presentReading)
+{
+    std::string description;
+    log_level logLevel = log_level::CRITICAL;
+
+    description += prefixMsgStrCreation(tid, sensorId);
+
+    if (presentReading & 0x01)
+    {
+        description += "Global watchdog expired;";
+    }
+    if (presentReading & 0x02)
+    {
+        description += "Secure watchdog expired;";
+    }
+    if (presentReading & 0x04)
+    {
+        description += "Non-secure watchdog expired;";
+    }
+
+    // Log to Redfish event
+    sendJournalRedfish(description, logLevel);
+}
+
 } // namespace oem_ampere
 } // namespace pldm
diff --git a/oem/ampere/event/oem_event_manager.hpp b/oem/ampere/event/oem_event_manager.hpp
index da56954..521a16b 100644
--- a/oem/ampere/event/oem_event_manager.hpp
+++ b/oem/ampere/event/oem_event_manager.hpp
@@ -32,6 +32,7 @@
     PCIE_HOT_PLUG = 169,
     SOC_HEALTH_AVAILABILITY = 170,
     BOOT_OVERALL = 175,
+    WATCH_DOG = 179,
 };
 
 namespace boot
@@ -332,6 +333,15 @@
     void handleVRDStatusEvent(pldm_tid_t tid, uint16_t sensorId,
                               uint32_t presentReading);
 
+    /** @brief Handle numeric sensor event message from Watchdog status sensor.
+     *
+     *  @param[in] tid - TID
+     *  @param[in] sensorId - Sensor ID
+     *  @param[in] presentReading - the present reading of the sensor
+     */
+    void handleNumericWatchdogEvent(pldm_tid_t tid, uint16_t sensorId,
+                                    uint32_t presentReading);
+
     /** @brief Handle numeric sensor event messages.
      *
      *  @param[in] tid - TID
