| 5e6fd374 | 23-Jan-2026 |
Ramya Sivakumar <sramya@ami.com> |
Fix variable naming convention in afterGetUUID
Rename uUID to uuid to follow standard C++ camelCase naming conventions for local variables. This improves code consistency and readability
Tested:
Fix variable naming convention in afterGetUUID
Rename uUID to uuid to follow standard C++ camelCase naming conventions for local variables. This improves code consistency and readability
Tested: - Built successfully with no compilation errors - No behavioral changes, purely a refactoring commit
Change-Id: I9d72a184138dd5e4123579d04c1d5e25ed1f2b09 Signed-off-by: Ramya Sivakumar <sramya@ami.com>
show more ...
|
| 1937681e | 23-Jan-2026 |
Ramya Sivakumar <sramya@ami.com> |
PCIe: Fix typo in variable name pciecDeviceName
Rename variable from 'pciecDeviceName' to 'pcieDeviceName' to correct the typo (extra 'c'). This improves code readability and follows proper naming c
PCIe: Fix typo in variable name pciecDeviceName
Rename variable from 'pciecDeviceName' to 'pcieDeviceName' to correct the typo (extra 'c'). This improves code readability and follows proper naming conventions
No functional change
Change-Id: Iaae7c6a0b3ac725fd393cc7db4a0f7ddd9457198 Signed-off-by: Ramya Sivakumar <sramya@ami.com>
show more ...
|
| ca879074 | 20-Jan-2026 |
Ramya Sivakumar <sramya@ami.com> |
Fix typo: retryAttemps -> retryAttempts
Fixed incorrect variable name 'retryAttemps' to 'retryAttempts' in the EventService PATCH handler. This typo was present in the variable declaration and all u
Fix typo: retryAttemps -> retryAttempts
Fixed incorrect variable name 'retryAttemps' to 'retryAttempts' in the EventService PATCH handler. This typo was present in the variable declaration and all usages within the DeliveryRetryAttempts parameter handling logic
Tested: Built successfully, no functional changes
Change-Id: I93699c9954c33c94d93bcc05d00c621c08aa3679 Signed-off-by: Ramya Sivakumar <sramya@ami.com>
show more ...
|
| 6f49f728 | 03-Sep-2025 |
Brad Bishop <bradbish@qti.qualcomm.com> |
Use boost::urls::format
boost::urls::format is specifically meant for URL construction. It handles encoding like percentage encoding which std::format does not.
Change-Id: I16c1467c856e36f072bd4248
Use boost::urls::format
boost::urls::format is specifically meant for URL construction. It handles encoding like percentage encoding which std::format does not.
Change-Id: I16c1467c856e36f072bd4248186b9819e40ae228 Signed-off-by: Brad Bishop <bradbish@qti.qualcomm.com>
show more ...
|
| b934d565 | 25-Nov-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Renaming of eventlog variables and functions
Following a comment on [1], fix some of the variable and function names, to match redfish terms.
Tested: Unit tests pass. Validation succeeded.
[1] htt
Renaming of eventlog variables and functions
Following a comment on [1], fix some of the variable and function names, to match redfish terms.
Tested: Unit tests pass. Validation succeeded.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/83354/13
Change-Id: Ie52309126c798b17136be99fd4a3d6650721257e Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| 157cf910 | 23-Dec-2025 |
Bowei Yu <yubowei0982@phytium.com.cn> |
Improve the efficiency of the chassis
Removed redundant inner for loop of chassis.
Tested: I watched webui still see UUID and Location Code in chassis.
Change-Id: I4abd5bf7a46eb997ade6537c198cccde
Improve the efficiency of the chassis
Removed redundant inner for loop of chassis.
Tested: I watched webui still see UUID and Location Code in chassis.
Change-Id: I4abd5bf7a46eb997ade6537c198cccde1abf3196 Signed-off-by: Bowei Yu <yubowei0982@phytium.com.cn>
show more ...
|
| 96a194c4 | 18-Aug-2025 |
Ed Tanous <ed@tanous.net> |
Implement modernize-use-ranges
This tidy check can transform code to use std::ranges. Enable the check, apply the fixes it proposes.
Tested: Redfish service validator passes in qemu
Change-Id: I3
Implement modernize-use-ranges
This tidy check can transform code to use std::ranges. Enable the check, apply the fixes it proposes.
Tested: Redfish service validator passes in qemu
Change-Id: I3f21b27d3d30277f71b9c8a2c584a22bc16865e9 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
| c583f900 | 01-Dec-2025 |
Igor Kanyuka <ifelmail@gmail.com> |
Expose Chassis state on Transitioning
If chassis is in one of transitioning states, Redfish interface does not expose PowerState and State.Status. This causes tests failure and users cannot determin
Expose Chassis state on Transitioning
If chassis is in one of transitioning states, Redfish interface does not expose PowerState and State.Status. This causes tests failure and users cannot determine the actual state using Redfish. Expose PowerState and State.Status for TransitioningToOff and TransitioningToOn to fix this.
Tested: Robot tests testing power operations now pass, before when the D-Bus state was TransitioningToOff or TransitioningToOn they would error because they could not find attributes they need. Also, ran rf_service_validator against BMC with D-Bus state set to TransitioningToOff and made sure it succeeded.
Change-Id: I9c446a107bac6a69e962ef81de82920c9cce21ae Signed-off-by: Igor Kanyuka <ifelmail@gmail.com>
show more ...
|
| d32aff8d | 23-Sep-2025 |
Myung Bae <myungbae@us.ibm.com> |
Add LocationIndicatorActive for Assembly
Implement LocationIndicatorActive for Assembly schema to set and get the status of the location LED. A client uses the `LocationIndicatorActive` property to
Add LocationIndicatorActive for Assembly
Implement LocationIndicatorActive for Assembly schema to set and get the status of the location LED. A client uses the `LocationIndicatorActive` property to physically identify or locate the assembly.
The assembly is an array of AssemblyData [1], and the element of the array can be patched as explained in [2].
``` { "Assemblies": [ {}, {}, { "LocationIndicatorActive": true }, {} ] } ```
Tested: - Validator passes. - 1. Get LocationIndicatorActive ``` curl -k -H "X-Auth-Token: $token" -X GET https://${bmc}/redfish/v1/Chassis/chassis/Assembly { "@odata.id": "/redfish/v1/Chassis/chassis/Assembly", "@odata.type": "#Assembly.v1_6_0.Assembly", "Assemblies": [ { "@odata.id": "/redfish/v1/Chassis/chassis/Assembly#/Assemblies/0", "@odata.type": "#Assembly.v1_6_0.AssemblyData", "LocationIndicatorActive": false, "MemberId": "0",
...
}, { "@odata.id": "/redfish/v1/Chassis/chassis/Assembly#/Assemblies/1", "@odata.type": "#Assembly.v1_6_0.AssemblyData", "LocationIndicatorActive": false, "MemberId": "1",
...
} ], "Assemblies@odata.count": 2, "Id": "Assembly", "Name": "Assembly Collection" } ```
2. Set LocationIndicatorActive to true ``` curl -k -H "X-Auth-Token: $token" -H "Content-Type: application/json" \ -X PATCH -d '{"Assemblies":[{"LocationIndicatorActive":true},{}]}' \ https://${bmc}/redfish/v1/Chassis/chassis/Assembly ```
Then we will see the location LED lit up, and the LocationIndicatorActive value becomes true.
``` curl -k -H "X-Auth-Token: $token" -X GET https://${bmc}/redfish/v1/Chassis/chassis/Assembly { "@odata.id": "/redfish/v1/Chassis/chassis/Assembly", "@odata.type": "#Assembly.v1_6_0.Assembly", "Assemblies": [ { "@odata.id": "/redfish/v1/Chassis/chassis/Assembly#/Assemblies/0", "@odata.type": "#Assembly.v1_6_0.AssemblyData", "LocationIndicatorActive": true, "MemberId": "0",
...
}, { "@odata.id": "/redfish/v1/Chassis/chassis/Assembly#/Assemblies/1", "@odata.type": "#Assembly.v1_6_0.AssemblyData", "LocationIndicatorActive": false, "MemberId": "1",
...
} ], "Assemblies@odata.count": 2, "Id": "Assembly", "Name": "Assembly Collection" } ```
If the input array size is different from the existing assemblies, it will cause an error like
``` curl -k -H "X-Auth-Token: $token" -H "Content-Type: application/json" \ -X PATCH -d '{"Assemblies":[{},{"LocationIndicatorActive":true},{}]}' \ https://${bmc}/redfish/v1/Chassis/chassis/Assembly { "error": { "@Message.ExtendedInfo": [ { "@odata.type": "#Message.v1_1_1.Message", "Message": "The array provided for property Assemblies exceeds the size limit 2.", "MessageArgs": [ "Assemblies", "2" ], "MessageId": "Base.1.19.ArraySizeTooLong", "MessageSeverity": "Warning", "Resolution": "Resubmit the request with an appropriate array size." } ], "code": "Base.1.19.ArraySizeTooLong", "message": "The array provided for property Assemblies exceeds the size limit 2." } }% ```
[1] https://redfish.dmtf.org/schemas/v1/Assembly.v1_6_0.json [2] https://redfishforum.com/thread/437/patch-individual-items-array-objects
Change-Id: Ic2e87f5daeb7ebed161654bb54ac29e7d5daa482 Signed-off-by: Myung Bae <myungbae@us.ibm.com>
show more ...
|
| 57d41fed | 13-Nov-2025 |
Janet Adkins <janeta@us.ibm.com> |
Fans: Create utility class for fans
Support for fans from separate routes of ThermalSubsystem and EnvironmentMetrics will need the same utility functions. By moving these shared functions into singl
Fans: Create utility class for fans
Support for fans from separate routes of ThermalSubsystem and EnvironmentMetrics will need the same utility functions. By moving these shared functions into single file will help with build time by not needing to included full fan support in all of the related locations.
Initially only the getFanPaths() is moved. Expectation is more functions will be added as the expanded support is added.
Tested: - Compiles - Verified ThermalSubsystem/Fans output unchanged
Change-Id: I22c22bdf38155e93aa13e259dd8c904a977f8a07 Signed-off-by: Janet Adkins <janeta@us.ibm.com>
show more ...
|
| c2f428f5 | 17-Oct-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Add remaining functions to systems_utils namespace
Initially, systems_utils.hpp has not defined its own namespace, all functions were under the redfish namespace. Patch 82078 [1] introduced systems_
Add remaining functions to systems_utils namespace
Initially, systems_utils.hpp has not defined its own namespace, all functions were under the redfish namespace. Patch 82078 [1] introduced systems_utils namespace to the header for new functionality.
This patch adds all functions, that haven't been part of the new namespace to systems_utils namespace and updates all call sites accordingly.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/82078
Tested: Code compiles.
Change-Id: Ia6ac3edd36aacc22cbf1a6adae4e2b264932b43c Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| 32ea63d3 | 03-Sep-2025 |
Ed Tanous <etanous@nvidia.com> |
Use boost::urls::format
boost::urls::format is specifically meant for URL construction. It handles encoding like percentage encoding which std::format does not.
Change-Id: Ib6e6bc8bcf30b138b9311157
Use boost::urls::format
boost::urls::format is specifically meant for URL construction. It handles encoding like percentage encoding which std::format does not.
Change-Id: Ib6e6bc8bcf30b138b93111577d9f2150709dda5c Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
| d5a39575 | 24-Nov-2025 |
Ed Tanous <etanous@nvidia.com> |
Inline globals
These globals shouldn't have been added to the redfish namespace, and can cause -Wshadow issues. Inline the variables for now, and we can assess whether we want to promote these to a
Inline globals
These globals shouldn't have been added to the redfish namespace, and can cause -Wshadow issues. Inline the variables for now, and we can assess whether we want to promote these to a common API later.
Change-Id: I57bf1754cdad6ccd2a37375fad4b26996f0e9e9a Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
| 6926d430 | 24-Nov-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Combine handlers for systems eventlog
Following patch 85522 [1], combine the handlers in systems eventlog.
Tested: Unit tests pass.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/85522
Change-
Combine handlers for systems eventlog
Following patch 85522 [1], combine the handlers in systems eventlog.
Tested: Unit tests pass.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/85522
Change-Id: Ib1649de83e64abb289e0379139d0a75466e15257 Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| c621786e | 24-Nov-2025 |
Ed Tanous <etanous@nvidia.com> |
Combine handlers
Fix one comment made on [1] to combine method calls into a single one.
Tested: Unit tests pass, @Oliver Brewka need your help to sanity check this.
[1] https://gerrit.openbmc.org/
Combine handlers
Fix one comment made on [1] to combine method calls into a single one.
Tested: Unit tests pass, @Oliver Brewka need your help to sanity check this.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/83355
Change-Id: Iad90d57c6cd0fe3926186f238aba887b88e99c12 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
| 7bf29ab3 | 23-Oct-2025 |
Christopher Meis <christopher.meis@9elements.com> |
redfish-core: Refactor storage.hpp
This change splits out storage controller and storage drive route setup and code into new files and unifies the call of route setup for storage, storage controller
redfish-core: Refactor storage.hpp
This change splits out storage controller and storage drive route setup and code into new files and unifies the call of route setup for storage, storage controller and storage drive collection and single storage controller properties.
Tested: CI ran through without errors, build testing succeeded.
Change-Id: I234eb034205b7e6c3a5f307172019d53d42de6e3 Signed-off-by: Christopher Meis <christopher.meis@9elements.com>
show more ...
|
| a0170837 | 13-Oct-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Rename Systems EventLog route handler
Rename the route handler to clearly indicate, that the handler handles the ComputerSystem redfish resource.
Tested: Code compiles.
Change-Id: Ib722427ab53f35b
Rename Systems EventLog route handler
Rename the route handler to clearly indicate, that the handler handles the ComputerSystem redfish resource.
Tested: Code compiles.
Change-Id: Ib722427ab53f35b2270fe6e102614f21fe28ffcb Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| ab8aaeba | 27-Aug-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Add DBus EventLog to Manager
In order to get access to the EventLog on multi-host platforms, add Journal EventLog to Manager. This implementation is based on the discussion we had on patch 76319 [1]
Add DBus EventLog to Manager
In order to get access to the EventLog on multi-host platforms, add Journal EventLog to Manager. This implementation is based on the discussion we had on patch 76319 [1].
TLDR: On multi-host, we technically would have to split the event log on a per host node basis, so that each host node has its own specific event log.
However, this is currently not supported so we had to decide, whether we put it on a specific ComputerSystem, or refactor the current implementation of the EventLog, to allow for the EventLog LogService to be part of the Managers resource. We chose the latter one, because a), it is not clear on which ComputerSystem to put the EventLog, as long as we aren't splitting the event log per host node, and b), if that particular ComputerSystem is not existing at runtime, there would be no access to the EventLog at all.
This feature can be enabled with the redfish-eventlog-location meson option. By default it is set to 'systems', which translates to the EventLog being under the Systems resource. To enable the EventLog under the Managers resource set
``` -Dredfish-eventlog-location=managers ``` This in turn, disables the EventLog under the ComputerSystem resource.
Tested: Redfish validation succeeded for both ComputerSystem and Managers tree.
Patch LogEntry: ``` $ curl -k -X PATCH 'https://'"${BMC}"':'"${BMC_WEBPORT}"'/redfish/v1/Managers/bmc/LogServices/EventLog/Entries/4444' \ -H 'X-Auth-Token: '"$BMCWEB_SESSION_TOKEN"'' \ -H "Content-Type: application/json" -d "{"Resolved":true}"
$ busctl introspect xyz.openbmc_project.Logging /xyz/openbmc_project/logging/entry/4444
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
...
xyz.openbmc_project.Logging.Entry interface - - - .GetEntry method - h - .AdditionalData property a{ss} 5 "CALLOUT_INVENTORY_PATH" "/xyz/open... emits-change writable .EventId property s "" emits-change writable .Id property u 4444 emits-change writable .Message property s "xyz.openbmc_project.Sensor.Threshold... emits-change writable .Resolution property s "" emits-change writable .Resolved property b true emits-change writable
```
Delete LogEntry: ``` $ busctl tree xyz.openbmc_project.Logging ... | |- /xyz/openbmc_project/logging/entry/6498 | |- /xyz/openbmc_project/logging/entry/6499 | |- /xyz/openbmc_project/logging/entry/6500 | |- /xyz/openbmc_project/logging/entry/6501 ...
$ curl -k -X DELETE 'https://'"${BMC}"':4443/redfish/v1/Managers/bmc/LogServices/EventLog/Entries/6500' \ -H 'X-Auth-Token: '"$BMCWEB_SESSION_TOKEN"'' \ -H "Content-Type: application/json"
| |- /xyz/openbmc_project/logging/entry/6498 | |- /xyz/openbmc_project/logging/entry/6499 | |- /xyz/openbmc_project/logging/entry/6501 ```
ClearLog action: ``` $ curl -k -X POST 'https://'"${BMC}"':4443/redfish/v1/Managers/bmc/LogServices/EventLog/Actions/LogService.ClearLog' \ -H 'X-Auth-Token: '"$BMCWEB_SESSION_TOKEN"'' \ -H "Content-Type: application/json"
{ "@Message.ExtendedInfo": [ { "@odata.type": "#Message.v1_1_1.Message", "Message": "The request completed successfully.", "MessageArgs": [], "MessageId": "Base.1.19.Success", "MessageSeverity": "OK", "Resolution": "None." } ] } ```
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/76319
Change-Id: Ie619af8e10a723aef2e02ef03796851511b05008 Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| 42d4e63b | 27-Aug-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Dynamic DBus EventLog handlers
In order to reuse handlers for DBus EventLog under Managers, add an additional argument that specifies the redfish resource.
Tested: Code compiles. Redfish validation
Dynamic DBus EventLog handlers
In order to reuse handlers for DBus EventLog under Managers, add an additional argument that specifies the redfish resource.
Tested: Code compiles. Redfish validation succeeds. Additionally the curl output with and without the changes has been diffed. No differences observed.
Change-Id: I13ec2f6e54f078b5b1064fb62c5561daa50f881a Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| 970173cc | 22-Sep-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Extract DBus EventLog common code
Extract all functions, that are either for utility purposes or will be called by both ComputerSystem EventLog and Managers EventLog in a follow-up patch. These func
Extract DBus EventLog common code
Extract all functions, that are either for utility purposes or will be called by both ComputerSystem EventLog and Managers EventLog in a follow-up patch. These functions now reside in the eventlog utility header.
Tested: Only code extraction. Code compiles.
Change-Id: I42632790d152ecdf71a769662a2a9eec2041879d Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| d8c230b6 | 13-Oct-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Refactor remaining DBus EventLog route handlers
Extract lambdas into separate handler functions.
Tested: Validation for the EventLog tree with redfish-dbus-log=enabled succeeded.
``` root@romulus:
Refactor remaining DBus EventLog route handlers
Extract lambdas into separate handler functions.
Tested: Validation for the EventLog tree with redfish-dbus-log=enabled succeeded.
``` root@romulus:~# busctl tree xyz.openbmc_project.Logging `- /xyz `- /xyz/openbmc_project `- /xyz/openbmc_project/logging |- /xyz/openbmc_project/logging/entry | |- /xyz/openbmc_project/logging/entry/21 | |- /xyz/openbmc_project/logging/entry/22 | |- /xyz/openbmc_project/logging/entry/23 | |- /xyz/openbmc_project/logging/entry/24 | |- /xyz/openbmc_project/logging/entry/25 | |- /xyz/openbmc_project/logging/entry/26 | |- /xyz/openbmc_project/logging/entry/27 | |- /xyz/openbmc_project/logging/entry/28 | |- /xyz/openbmc_project/logging/entry/29 | `- /xyz/openbmc_project/logging/entry/30 `- /xyz/openbmc_project/logging/internal `- /xyz/openbmc_project/logging/internal/manager ```
Patching ``` curl -k -X PATCH 'https://'"${BMC}"':'"${BMC_WEBPORT}"'/redfish/v1/Systems/system/LogServices/EventLog/Entries/22' \ -H 'X-Auth-Token: '"$BMCWEB_SESSION_TOKEN"'' \ -H "Content-Type: application/json" -d "{"Resolved":true}"
xyz.openbmc_project.Logging.Entry interface - - .GetEntry method - h .AdditionalData property a{ss} 0 .EventId property s "" .Id property u 21 .Message property s "This is mock message 1" .Resolution property s "" emits-change writable .Resolved property b true ```
Deleting ``` $ curl -k -X DELETE 'https://'"${BMC}"':'"${BMC_WEBPORT}"'/redfish/v1/'"$ROUTE"'' \ -H 'X-Auth-Token: '"$BMCWEB_SESSION_TOKEN"'' \ -H "Content-Type: application/json"
$ busctl tree xyz.openbmc_project.Logging `- /xyz `- /xyz/openbmc_project `- /xyz/openbmc_project/logging |- /xyz/openbmc_project/logging/entry | |- /xyz/openbmc_project/logging/entry/21 | |- /xyz/openbmc_project/logging/entry/23 | |- /xyz/openbmc_project/logging/entry/24 | |- /xyz/openbmc_project/logging/entry/25 | |- /xyz/openbmc_project/logging/entry/26 | |- /xyz/openbmc_project/logging/entry/27 | |- /xyz/openbmc_project/logging/entry/28 | |- /xyz/openbmc_project/logging/entry/29 | `- /xyz/openbmc_project/logging/entry/30 `- /xyz/openbmc_project/logging/internal `- /xyz/openbmc_project/logging/internal/manager ```
ClearLog action ``` $ curl -v -k POST 'https://'"${BMC}"':'"${BMC_WEBPORT}"'/redfish/v1/'"$ROUTE"'' \ -H 'X-Auth-Token: '"$BMCWEB_SESSION_TOKEN"'' \ -H "Content-Type: application/json"
"@Message.ExtendedInfo": [ { "@odata.type": "#Message.v1_1_1.Message", "Message": "The request completed successfully.", "MessageArgs": [], "MessageId": "Base.1.19.Success", "MessageSeverity": "OK", "Resolution": "None." } ]
$ busctl introspect xyz.openbmc_project.Logging /xyz/openbmc_project/logging/entry/1
... xyz.openbmc_project.Logging.Entry interface - - .GetEntry method - h .AdditionalData property a{ss} 5 "NUMBER_OF_LOGS" "9" "_CODE_FILE" "... .EventId property s "" .Id property u 1 .Message property s "xyz.openbmc_project.Logging.Cleared" .Resolution property s "" .Resolved property b false ... ```
Change-Id: I25a5484c17ed966376d85c9c3439350163d6c5ed Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| 532cdaac | 27-Aug-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Refactor DBus EventLog Entry download
In order to maximize common code extraction in the follow-up patch, refactor the code for LogEntry download, so that the requestRoutes functions holds the impor
Refactor DBus EventLog Entry download
In order to maximize common code extraction in the follow-up patch, refactor the code for LogEntry download, so that the requestRoutes functions holds the important control flow checks. This way we can make the handler common code for both Systems DBus EventLog as well as Managers DBus EventLog.
Tested: Only code extraction. Code compiles.
Change-Id: If8ebdd9a1d4b37ae00bb7f6b2ceaedf0d2c37e5d Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| a9bf68b9 | 22-Aug-2025 |
Myung Bae <myungbae@us.ibm.com> |
Redo Refactor Managers with getValidManagerPath
The previous refactor of Managers [1] had an issue and was reverted. This is redoing the refactor of getValidManagerPath() to find the valid manager d
Redo Refactor Managers with getValidManagerPath
The previous refactor of Managers [1] had an issue and was reverted. This is redoing the refactor of getValidManagerPath() to find the valid manager dbus path and its service name.
This can be used for manager GET and PATCH operations.
Tested: - GET /redfish/v1/Managers/bmc - PATCH /redfish/v1/Managers/ LocationIndicatorActive - Redfish Service Validator passes
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/83067
Change-Id: Iea5edb7feb29bcf088ed23479748747437a3bb5b Signed-off-by: Myung Bae <myungbae@us.ibm.com>
show more ...
|
| 43feb5cd | 24-Sep-2025 |
Oliver Brewka <oliver.brewka@9elements.com> |
Add Journal EventLog to Manager
In order to get access to the EventLog on multi-host platforms, add Journal EventLog to Manager. This implementation is based on the discussion we had on patch 76319
Add Journal EventLog to Manager
In order to get access to the EventLog on multi-host platforms, add Journal EventLog to Manager. This implementation is based on the discussion we had on patch 76319 [1].
TLDR: On multi-host, we technically would have to split the event log on a per host node basis, so that each host node has its own specific event log.
However, this is currently not supported so we had to decide, whether we put it on a specific ComputerSystem, or refactor the current implementation of the EventLog, to allow for the EventLog LogService to be part of the Managers resource. We chose the latter one, because a), it is not clear on which ComputerSystem to put the EventLog, as long as we aren't splitting the event log per host node, and b), if that particular ComputerSystem is not existing at runtime, there would be no access to the EventLog at all.
This feature can be enabled with the redfish-eventlog-location meson option. By default it is set to 'systems', which translates to the EventLog being under the Systems resource. To enable the EventLog under the Managers resource set
``` -Dredfish-eventlog-location=managers ``` This in turn, disables the EventLog under the ComputerSystem resource.
Tested: Redfish validation succeeded for both ComputerSystem and Managers tree.
``` curl command: curl -w "@curl-format.txt" -c cjar -b cjar -k -X GET 'https://'"${BMC}"':4443/redfish/v1/'"$ROUTE"'' \ -H 'X-Auth-Token: '"$BMCWEB_SESSION_TOKEN"''
GET /redfish/v1/Managers/bmc/LogServices { "@odata.id": "/redfish/v1/Managers/bmc/LogServices", "@odata.type": "#LogServiceCollection.LogServiceCollection", "Description": "Collection of LogServices for this Manager", "Members": [ { "@odata.id": "/redfish/v1/Managers/bmc/LogServices/Journal" }, { "@odata.id": "/redfish/v1/Managers/bmc/LogServices/EventLog" } ], "Members@odata.count": 2, "Name": "Open BMC Log Services Collection" }
GET /redfish/v1/Managers/bmc/LogServices/EventLog { "@odata.id": "/redfish/v1/Managers/bmc/LogServices/EventLog", "@odata.type": "#LogService.v1_2_0.LogService", "Actions": { "#LogService.ClearLog": { "target": "/redfish/v1/Managers/bmc/LogServices/EventLog/Actions/LogService.ClearLog" } }, "DateTime": "2025-09-24T15:22:36+00:00", "DateTimeLocalOffset": "+00:00", "Description": "Manager Event Log Service", "Entries": { "@odata.id": "/redfish/v1/Managers/bmc/LogServices/EventLog/Entries" }, "Id": "EventLog", "Name": "Event Log Service", "OverWritePolicy": "WrapsWhenFull" }
GET /redfish/v1/Managers/bmc/LogServices/EventLog/Entries { "@odata.id": "/redfish/v1/Managers/bmc/LogServices/EventLog/Entries", "@odata.type": "#LogEntryCollection.LogEntryCollection", "Description": "Collection of Manager Event Log Entries", "Members": [ { "@odata.id": "/redfish/v1/Managers/bmc/LogServices/EventLog/Entries/1730009576", "@odata.type": "#LogEntry.v1_9_0.LogEntry", "Created": "2024-10-27T06:12:56+00:00", "EntryType": "Event", "Id": "1730009576", "Message": "Host system DC power is off", "MessageArgs": [], "MessageId": "OpenBMC.0.1.DCPowerOff", "Name": "Manager Event Log Entry", "Severity": "OK" }, ... ], "Members@odata.count": 2820, "Members@odata.nextLink": "/redfish/v1/Managers/bmc/LogServices/EventLog/Entries?$skip=1000", "Name": "Manager Event Log Entries" }
GET /redfish/v1/Managers/bmc/LogServices/EventLog/Entries/1730009576 { "@odata.id": "/redfish/v1/Managers/bmc/LogServices/EventLog/Entries/1730009576", "@odata.type": "#LogEntry.v1_9_0.LogEntry", "Created": "2024-10-27T06:12:56+00:00", "EntryType": "Event", "Id": "1730009576", "Message": "Host system DC power is off", "MessageArgs": [], "MessageId": "OpenBMC.0.1.DCPowerOff", "Name": "Manager Event Log Entry", "Severity": "OK" } ``` ClearLog action: Log files are being successfully deleted from /var/log
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/76319
Change-Id: If5b4fe10151b6bfd28a1b49c41f8cfcec1b9132c Signed-off-by: Oliver Brewka <oliver.brewka@9elements.com>
show more ...
|
| 33c027d6 | 05-Nov-2025 |
Michal Orzel <michalx.orzel@intel.com> |
Triggers: Drop support for LogToLogService action
As per discussion on Gerrit [1], current backend behavior during processing the `LogToLogService` trigger action doesn't comply with Redfish specifi
Triggers: Drop support for LogToLogService action
As per discussion on Gerrit [1], current backend behavior during processing the `LogToLogService` trigger action doesn't comply with Redfish specification. It has been decided to invalidate it for now, with an option for revisiting in some future.
Related changes: phosphor-dbus-interfaces: [2] telemetry: [3]
Tested: Verified that trigger with `LogToLogService` action cannot be created. Redfish Validator scan passed.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/80653/comments/fb8e05c7_ead780bb [2] https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/85268 [3] https://gerrit.openbmc.org/c/openbmc/telemetry/+/85318
Change-Id: Ia292ebf3f69dfdc603f2b784f0a2f01e2d21a8f4 Signed-off-by: Michal Orzel <michalx.orzel@intel.com>
show more ...
|