blob: 3e6a638c42c9fe46c458fa92539c931abf54363c [file] [log] [blame]
Steven Sombara3f04392018-10-01 15:38:21 -05001*** Settings ***
2Documentation Utilities for eSEL testing.
3
4Resource ../lib/ipmi_client.robot
5Resource ../lib/utils.robot
George Keishing6716d6a2019-06-03 10:18:20 -05006Resource ../lib/logging_utils.robot
Steven Sombara3f04392018-10-01 15:38:21 -05007Variables ../data/variables.py
8
9
10*** Variables ***
11
Steven Sombara3f04392018-10-01 15:38:21 -050012${RESERVE_ID} raw 0x0a 0x42
13
14${RAW_SUFFIX} 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0x00
Steven Sombar31b6bd02019-03-06 10:58:07 -060015... 0xdf 0x00 0x00 0x00 0x00 0x20 0x00 0x04 0x12 0x65 0x6f 0xaa 0x00 0x00
Steven Sombara3f04392018-10-01 15:38:21 -050016
17${RAW_SEL_COMMIT} raw 0x0a 0x44 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x20
18... 0x00 0x04 0x12 0xA6 0x6f 0x02 0x00 0x01
19
20
21*** Keywords ***
22
23Create eSEL
24 [Documentation] Create an eSEL.
Sridevi Ramesh2a2dbbd2025-03-18 00:57:14 -050025 [Arguments] ${IPMI_RAW_PREFIX}
26
27 # Description of Argument(s):
28 # IPMI_RAW_PREFIX Provide the IPMI raw prefix format
29 # Default is '0x3a 0xf0 0x'.
30
Steven Sombara3f04392018-10-01 15:38:21 -050031 Open Connection And Log In
32 ${Resv_id}= Run Inband IPMI Standard Command ${RESERVE_ID}
33 ${cmd}= Catenate
Sridevi Ramesh2a2dbbd2025-03-18 00:57:14 -050034 ... raw ${IPMI_RAW_PREFIX}${Resv_id.strip().rsplit(' ', 1)[0]} ${RAW_SUFFIX}
35
Steven Sombara3f04392018-10-01 15:38:21 -050036 Run Inband IPMI Standard Command ${cmd}
37 Run Inband IPMI Standard Command ${RAW_SEL_COMMIT}
38
39
40Count eSEL Entries
41 [Documentation] Count eSEL entries logged.
Sridevi Ramesh2a2dbbd2025-03-18 00:57:14 -050042
Steven Sombara3f04392018-10-01 15:38:21 -050043 ${resp}= OpenBMC Get Request ${BMC_LOGGING_ENTRY}
44 Should Be Equal As Strings ${resp.status_code} ${HTTP_OK}
George Keishingfbd67002022-08-01 11:24:03 -050045 ${count}= Get Length ${resp.json()["data"]}
George Keishing409df052024-01-17 22:36:14 +053046 RETURN ${count}
Steven Sombara3f04392018-10-01 15:38:21 -050047
48
49Verify eSEL Entries
50 [Documentation] Verify eSEL entries logged.
Steven Sombara3f04392018-10-01 15:38:21 -050051
George Keishing6716d6a2019-06-03 10:18:20 -050052 # {
53 # "@odata.context": "/redfish/v1/$metadata#LogEntry.LogEntry",
54 # "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog/Entries/2",
55 # "@odata.type": "#LogEntry.v1_4_0.LogEntry",
56 # "Created": "2019-06-03T14:47:31+00:00",
57 # "EntryType": "Event",
58 # "Id": "2",
59 # "Message": "org.open_power.Host.Error.Event",
60 # "Name": "System DBus Event Log Entry",
61 # "Severity": "Critical"
62 # }
63
64 ${elog_entry}= Get Event Logs
65 Should Be Equal ${elog_entry[0]["Message"]} org.open_power.Host.Error.Event
66 Should Be Equal ${elog_entry[0]["Severity"]} Critical
Steven Sombar3839c8c2019-09-09 14:39:45 -050067
68
69Check For Error Logs
70 [Documentation] Fail if there are error logs. Ignore logs with
George Keishing178d9bf2020-07-09 08:29:29 -050071 ... severity in the ignorelist.
Steven Sombar3839c8c2019-09-09 14:39:45 -050072
Konstantin Aladyshev10ac7fe2021-03-23 01:11:22 +030073 [Arguments] ${ignorelist}
Steven Sombar3839c8c2019-09-09 14:39:45 -050074
75 # Description of Argument(s):
George Keishing178d9bf2020-07-09 08:29:29 -050076 # ignorelist A list to be used to filter out esels which are
Steven Sombar3839c8c2019-09-09 14:39:45 -050077 # of no interest to the caller.
78 # Error Logs with Severity field matching an
79 # entry in this list will be ignored. (e.g.
80 # xyz.openbmc_project.Logging.Entry.Level.Error)
81
82 Print Timen Checking Error Logs.
83 ${error_logs}= Get Error Logs
84
85 ${num_error_logs}= Get Length ${error_logs}
86 Return From Keyword If ${num_error_logs} == ${0}
87
88 # Get a list of the severities of the error logs.
89 ${error_log_severities}= Nested Get Severity ${error_logs}
George Keishing178d9bf2020-07-09 08:29:29 -050090 # Subtract the IGNORETLIST from the error_log_severities.
Steven Sombar3839c8c2019-09-09 14:39:45 -050091 ${problem_error_logs}= Evaluate
Konstantin Aladyshev10ac7fe2021-03-23 01:11:22 +030092 ... list(set($error_log_severities) - set($ignorelist))
Steven Sombar3839c8c2019-09-09 14:39:45 -050093
94 Valid Length problem_error_logs max_length=0