18cca7fb8SGeorge Keishing*** Settings *** 28cca7fb8SGeorge KeishingDocumentation Inventory of hardware resources under systems. 38cca7fb8SGeorge Keishing 48cca7fb8SGeorge KeishingResource ../../../lib/bmc_redfish_resource.robot 58cca7fb8SGeorge KeishingResource ../../../lib/bmc_redfish_utils.robot 68cca7fb8SGeorge KeishingResource ../../../lib/logging_utils.robot 78cca7fb8SGeorge KeishingResource ../../../lib/openbmc_ffdc.robot 88cca7fb8SGeorge Keishing 9*b0a491f2SGeorge KeishingTest Setup Test Setup Execution 108cca7fb8SGeorge KeishingTest Teardown Test Teardown Execution 11*b0a491f2SGeorge KeishingSuite Teardown Suite Teardown Execution 128cca7fb8SGeorge Keishing 138cca7fb8SGeorge Keishing*** Test Cases *** 148cca7fb8SGeorge Keishing 158cca7fb8SGeorge KeishingEvent Log Check After BMC Reboot 168cca7fb8SGeorge Keishing [Documentation] Check event log after BMC rebooted. 178cca7fb8SGeorge Keishing [Tags] Event_Log_Check_After_BMC_Reboot 188cca7fb8SGeorge Keishing 198cca7fb8SGeorge Keishing Redfish Purge Event Log 208cca7fb8SGeorge Keishing Event Log Should Not Exist 218cca7fb8SGeorge Keishing 228cca7fb8SGeorge Keishing Redfish OBMC Reboot (off) 238cca7fb8SGeorge Keishing 248cca7fb8SGeorge Keishing Redfish.Login 258cca7fb8SGeorge Keishing Wait Until Keyword Succeeds 1 mins 15 secs Redfish.Get ${EVENT_LOG_URI}Entries 268cca7fb8SGeorge Keishing 278cca7fb8SGeorge Keishing Event Log Should Not Exist 288cca7fb8SGeorge Keishing 298cca7fb8SGeorge Keishing 30*b0a491f2SGeorge KeishingEvent Log Check After Host Poweron 31*b0a491f2SGeorge Keishing [Documentation] Check event log after host has booted. 32*b0a491f2SGeorge Keishing [Tags] Event_Log_Check_After_Host_Poweron 33*b0a491f2SGeorge Keishing 34*b0a491f2SGeorge Keishing Redfish Purge Event Log 35*b0a491f2SGeorge Keishing Event Log Should Not Exist 36*b0a491f2SGeorge Keishing 37*b0a491f2SGeorge Keishing Redfish Power On 38*b0a491f2SGeorge Keishing 39*b0a491f2SGeorge Keishing Redfish.Login 40*b0a491f2SGeorge Keishing Event Log Should Not Exist 41*b0a491f2SGeorge Keishing 42*b0a491f2SGeorge Keishing 43*b0a491f2SGeorge KeishingCreate Test Event Log And Verify 44*b0a491f2SGeorge Keishing [Documentation] Create event logs and verify via redfish. 45*b0a491f2SGeorge Keishing [Tags] Create_Test_Event_Log_And_Verify 46*b0a491f2SGeorge Keishing 47*b0a491f2SGeorge Keishing Create Test Error Log 48*b0a491f2SGeorge Keishing Event Log Should Exist 49*b0a491f2SGeorge Keishing 50*b0a491f2SGeorge Keishing 51*b0a491f2SGeorge KeishingTest Event Log Persistency On Restart 52*b0a491f2SGeorge Keishing [Documentation] Restart logging service and verify event logs. 53*b0a491f2SGeorge Keishing [Tags] Test_Event_Log_Persistency_On_Restart 54*b0a491f2SGeorge Keishing 55*b0a491f2SGeorge Keishing Create Test Error Log 56*b0a491f2SGeorge Keishing Event Log Should Exist 57*b0a491f2SGeorge Keishing 58*b0a491f2SGeorge Keishing BMC Execute Command 59*b0a491f2SGeorge Keishing ... systemctl restart xyz.openbmc_project.Logging.service 60*b0a491f2SGeorge Keishing Sleep 10s reason=Wait for logging service to restart properly. 61*b0a491f2SGeorge Keishing 62*b0a491f2SGeorge Keishing Event Log Should Exist 63*b0a491f2SGeorge Keishing 64*b0a491f2SGeorge Keishing 65*b0a491f2SGeorge KeishingTest Event Entry Numbering Reset On Restart 66*b0a491f2SGeorge Keishing [Documentation] Restart logging service and verify event logs entry starts 67*b0a491f2SGeorge Keishing ... from entry "Id" 1. 68*b0a491f2SGeorge Keishing [Tags] Test_Event_Entry_Numbering_Reset_On_Restart 69*b0a491f2SGeorge Keishing 70*b0a491f2SGeorge Keishing #{ 71*b0a491f2SGeorge Keishing # "@odata.context": "/redfish/v1/$metadata#LogEntryCollection.LogEntryCollection", 72*b0a491f2SGeorge Keishing # "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog/Entries", 73*b0a491f2SGeorge Keishing # "@odata.type": "#LogEntryCollection.LogEntryCollection", 74*b0a491f2SGeorge Keishing # "Description": "Collection of System Event Log Entries", 75*b0a491f2SGeorge Keishing # "Members": [ 76*b0a491f2SGeorge Keishing # { 77*b0a491f2SGeorge Keishing # "@odata.context": "/redfish/v1/$metadata#LogEntry.LogEntry", 78*b0a491f2SGeorge Keishing # "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog/Entries/1", 79*b0a491f2SGeorge Keishing # "@odata.type": "#LogEntry.v1_4_0.LogEntry", 80*b0a491f2SGeorge Keishing # "Created": "2019-05-29T13:19:27+00:00", 81*b0a491f2SGeorge Keishing # "EntryType": "Event", 82*b0a491f2SGeorge Keishing # "Id": "1", <----- Event log ID 83*b0a491f2SGeorge Keishing # "Message": "org.open_power.Host.Error.Event", 84*b0a491f2SGeorge Keishing # "Name": "System DBus Event Log Entry", 85*b0a491f2SGeorge Keishing # "Severity": "Critical" 86*b0a491f2SGeorge Keishing # } 87*b0a491f2SGeorge Keishing # ], 88*b0a491f2SGeorge Keishing # "Members@odata.count": 1, 89*b0a491f2SGeorge Keishing # "Name": "System Event Log Entries" 90*b0a491f2SGeorge Keishing #} 91*b0a491f2SGeorge Keishing 92*b0a491f2SGeorge Keishing Create Test Error Log 93*b0a491f2SGeorge Keishing Create Test Error Log 94*b0a491f2SGeorge Keishing Event Log Should Exist 95*b0a491f2SGeorge Keishing 96*b0a491f2SGeorge Keishing Redfish Purge Event Log 97*b0a491f2SGeorge Keishing Event Log Should Not Exist 98*b0a491f2SGeorge Keishing 99*b0a491f2SGeorge Keishing BMC Execute Command 100*b0a491f2SGeorge Keishing ... systemctl restart xyz.openbmc_project.Logging.service 101*b0a491f2SGeorge Keishing Sleep 10s reason=Wait for logging service to restart properly. 102*b0a491f2SGeorge Keishing 103*b0a491f2SGeorge Keishing Create Test Error Log 104*b0a491f2SGeorge Keishing ${elogs}= Get Event Logs 105*b0a491f2SGeorge Keishing Should Be Equal ${elogs[0]["Id"]} 1 msg=Event log entry is not 1. 106*b0a491f2SGeorge Keishing 107*b0a491f2SGeorge Keishing 108*b0a491f2SGeorge KeishingTest Event Log Persistency On Reboot 109*b0a491f2SGeorge Keishing [Documentation] Reboot BMC and verify event log. 110*b0a491f2SGeorge Keishing [Tags] Test_Event_Log_Persistency_On_Reboot 111*b0a491f2SGeorge Keishing 112*b0a491f2SGeorge Keishing Redfish Purge Event Log 113*b0a491f2SGeorge Keishing Create Test Error Log 114*b0a491f2SGeorge Keishing Event Log Should Exist 115*b0a491f2SGeorge Keishing 116*b0a491f2SGeorge Keishing Redfish OBMC Reboot (off) 117*b0a491f2SGeorge Keishing 118*b0a491f2SGeorge Keishing Redfish.Login 119*b0a491f2SGeorge Keishing Wait Until Keyword Succeeds 1 mins 15 secs Redfish.Get ${EVENT_LOG_URI}Entries 120*b0a491f2SGeorge Keishing 121*b0a491f2SGeorge Keishing Event Log Should Exist 122*b0a491f2SGeorge Keishing 123*b0a491f2SGeorge Keishing 1248cca7fb8SGeorge Keishing*** Keywords *** 1258cca7fb8SGeorge Keishing 1268cca7fb8SGeorge KeishingSuite Teardown Execution 1278cca7fb8SGeorge Keishing [Documentation] Do the post suite teardown. 1288cca7fb8SGeorge Keishing 1298cca7fb8SGeorge Keishing Redfish.Logout 1308cca7fb8SGeorge Keishing 1318cca7fb8SGeorge Keishing 132*b0a491f2SGeorge KeishingTest Setup Execution 1338cca7fb8SGeorge Keishing [Documentation] Do test case setup tasks. 1348cca7fb8SGeorge Keishing 1358cca7fb8SGeorge Keishing Redfish.Login 1368cca7fb8SGeorge Keishing 1378cca7fb8SGeorge Keishing ${status}= Run Keyword And Return Status Logging Test Binary Exist 1388cca7fb8SGeorge Keishing Run Keyword If ${status} == ${False} Install Tarball 1398cca7fb8SGeorge Keishing 1408cca7fb8SGeorge Keishing 1418cca7fb8SGeorge KeishingTest Teardown Execution 1428cca7fb8SGeorge Keishing [Documentation] Do the post test teardown. 1438cca7fb8SGeorge Keishing 1448cca7fb8SGeorge Keishing FFDC On Test Case Fail 145*b0a491f2SGeorge Keishing Redfish Purge Event Log 1468cca7fb8SGeorge Keishing 1478cca7fb8SGeorge Keishing 1488cca7fb8SGeorge KeishingEvent Log Should Not Exist 1498cca7fb8SGeorge Keishing [Documentation] Event log entries should not exist. 1508cca7fb8SGeorge Keishing 1518cca7fb8SGeorge Keishing ${elogs}= Get Event Logs 1528cca7fb8SGeorge Keishing Should Be Empty ${elogs} msg=System event log entry is not empty. 153*b0a491f2SGeorge Keishing 154*b0a491f2SGeorge Keishing 155*b0a491f2SGeorge KeishingEvent Log Should Exist 156*b0a491f2SGeorge Keishing [Documentation] Event log entries should exist. 157*b0a491f2SGeorge Keishing 158*b0a491f2SGeorge Keishing ${elogs}= Get Event Logs 159*b0a491f2SGeorge Keishing Should Not Be Empty ${elogs} msg=System event log entry is not empty. 160