1a3f0439fSSteven Sombar*** Settings *** 2a3f0439fSSteven SombarDocumentation Utilities for eSEL testing. 3a3f0439fSSteven Sombar 4a3f0439fSSteven SombarResource ../lib/ipmi_client.robot 5a3f0439fSSteven SombarResource ../lib/utils.robot 66716d6a8SGeorge KeishingResource ../lib/logging_utils.robot 7a3f0439fSSteven SombarVariables ../data/variables.py 8a3f0439fSSteven Sombar 9a3f0439fSSteven Sombar 10a3f0439fSSteven Sombar*** Variables *** 11a3f0439fSSteven Sombar 12a3f0439fSSteven Sombar${RAW_PREFIX} raw 0x3a 0xf0 0x 13a3f0439fSSteven Sombar 14a3f0439fSSteven Sombar${RESERVE_ID} raw 0x0a 0x42 15a3f0439fSSteven Sombar 16a3f0439fSSteven Sombar${RAW_SUFFIX} 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0x00 1731b6bd0eSSteven Sombar... 0xdf 0x00 0x00 0x00 0x00 0x20 0x00 0x04 0x12 0x65 0x6f 0xaa 0x00 0x00 18a3f0439fSSteven Sombar 19a3f0439fSSteven Sombar${RAW_SEL_COMMIT} raw 0x0a 0x44 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x20 20a3f0439fSSteven Sombar... 0x00 0x04 0x12 0xA6 0x6f 0x02 0x00 0x01 21a3f0439fSSteven Sombar 22a3f0439fSSteven Sombar 23a3f0439fSSteven Sombar*** Keywords *** 24a3f0439fSSteven Sombar 25a3f0439fSSteven SombarCreate eSEL 26a3f0439fSSteven Sombar [Documentation] Create an eSEL. 27a3f0439fSSteven Sombar Open Connection And Log In 28a3f0439fSSteven Sombar ${Resv_id}= Run Inband IPMI Standard Command ${RESERVE_ID} 29a3f0439fSSteven Sombar ${cmd}= Catenate 30a3f0439fSSteven Sombar ... ${RAW_PREFIX}${Resv_id.strip().rsplit(' ', 1)[0]} ${RAW_SUFFIX} 31a3f0439fSSteven Sombar Run Inband IPMI Standard Command ${cmd} 32a3f0439fSSteven Sombar Run Inband IPMI Standard Command ${RAW_SEL_COMMIT} 33a3f0439fSSteven Sombar 34a3f0439fSSteven Sombar 35a3f0439fSSteven SombarCount eSEL Entries 36a3f0439fSSteven Sombar [Documentation] Count eSEL entries logged. 37a3f0439fSSteven Sombar ${resp}= OpenBMC Get Request ${BMC_LOGGING_ENTRY} 38a3f0439fSSteven Sombar Should Be Equal As Strings ${resp.status_code} ${HTTP_OK} 39*fbd67007SGeorge Keishing ${count}= Get Length ${resp.json()["data"]} 40a3f0439fSSteven Sombar [Return] ${count} 41a3f0439fSSteven Sombar 42a3f0439fSSteven Sombar 43a3f0439fSSteven SombarVerify eSEL Entries 44a3f0439fSSteven Sombar [Documentation] Verify eSEL entries logged. 45a3f0439fSSteven Sombar 466716d6a8SGeorge Keishing # { 476716d6a8SGeorge Keishing # "@odata.context": "/redfish/v1/$metadata#LogEntry.LogEntry", 486716d6a8SGeorge Keishing # "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog/Entries/2", 496716d6a8SGeorge Keishing # "@odata.type": "#LogEntry.v1_4_0.LogEntry", 506716d6a8SGeorge Keishing # "Created": "2019-06-03T14:47:31+00:00", 516716d6a8SGeorge Keishing # "EntryType": "Event", 526716d6a8SGeorge Keishing # "Id": "2", 536716d6a8SGeorge Keishing # "Message": "org.open_power.Host.Error.Event", 546716d6a8SGeorge Keishing # "Name": "System DBus Event Log Entry", 556716d6a8SGeorge Keishing # "Severity": "Critical" 566716d6a8SGeorge Keishing # } 576716d6a8SGeorge Keishing 586716d6a8SGeorge Keishing ${elog_entry}= Get Event Logs 596716d6a8SGeorge Keishing Should Be Equal ${elog_entry[0]["Message"]} org.open_power.Host.Error.Event 606716d6a8SGeorge Keishing Should Be Equal ${elog_entry[0]["Severity"]} Critical 613839c8cfSSteven Sombar 623839c8cfSSteven Sombar 633839c8cfSSteven SombarCheck For Error Logs 643839c8cfSSteven Sombar [Documentation] Fail if there are error logs. Ignore logs with 65178d9bf2SGeorge Keishing ... severity in the ignorelist. 663839c8cfSSteven Sombar 6710ac7fe2SKonstantin Aladyshev [Arguments] ${ignorelist} 683839c8cfSSteven Sombar 693839c8cfSSteven Sombar # Description of Argument(s): 70178d9bf2SGeorge Keishing # ignorelist A list to be used to filter out esels which are 713839c8cfSSteven Sombar # of no interest to the caller. 723839c8cfSSteven Sombar # Error Logs with Severity field matching an 733839c8cfSSteven Sombar # entry in this list will be ignored. (e.g. 743839c8cfSSteven Sombar # xyz.openbmc_project.Logging.Entry.Level.Error) 753839c8cfSSteven Sombar 763839c8cfSSteven Sombar Print Timen Checking Error Logs. 773839c8cfSSteven Sombar ${error_logs}= Get Error Logs 783839c8cfSSteven Sombar 793839c8cfSSteven Sombar ${num_error_logs}= Get Length ${error_logs} 803839c8cfSSteven Sombar Return From Keyword If ${num_error_logs} == ${0} 813839c8cfSSteven Sombar 823839c8cfSSteven Sombar # Get a list of the severities of the error logs. 833839c8cfSSteven Sombar ${error_log_severities}= Nested Get Severity ${error_logs} 84178d9bf2SGeorge Keishing # Subtract the IGNORETLIST from the error_log_severities. 853839c8cfSSteven Sombar ${problem_error_logs}= Evaluate 8610ac7fe2SKonstantin Aladyshev ... list(set($error_log_severities) - set($ignorelist)) 873839c8cfSSteven Sombar 883839c8cfSSteven Sombar Valid Length problem_error_logs max_length=0 89