6050b655 | 20-Dec-2024 |
Michal Orzel <michalx.orzel@intel.com> |
Fix CI compilation issue
Resolves maybe-uninitialized error for std::function object, which shows when compiling with optimizations.
Tested: CI build passed.
Change-Id: Ia6f07a23715f0bf34d19e100bc
Fix CI compilation issue
Resolves maybe-uninitialized error for std::function object, which shows when compiling with optimizations.
Tested: CI build passed.
Change-Id: Ia6f07a23715f0bf34d19e100bca94fc29cd0aa9f Signed-off-by: Michal Orzel <michalx.orzel@intel.com>
show more ...
|
f535cad6 | 16-Aug-2024 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda forma
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda formatting also changed, so we have made changes to the organization default style format to better handle lambda formatting.
See I5e08687e696dd240402a2780158664b7113def0e for updated style. See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.
Change-Id: I956cf3cb1bbfc017c4d4dceb3195c1d0735b0605 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
c7935fa1 | 20-Oct-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I016cb74930cc475843c30bd604e739058effa504 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
cff70c14 | 27-Oct-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Removed FutureVersion from API
Instead of using FutureVersion API currently used version is updated. This change needs to be bumped together with [1]. API that utilized map of variants to be more fl
Removed FutureVersion from API
Instead of using FutureVersion API currently used version is updated. This change needs to be bumped together with [1]. API that utilized map of variants to be more flexible and backwards compatible was reverted. It was decided that straight forward API that is commonly used should be used instead.
Removed MetricId property from Metric. In telemetry it was implemented as a name for Metric, but it was supposed to work as described in [2]. Currently MetricId is not supported by telemetry service and property was removed.
Tested: - After chaging bmcweb to use new API old and new features are working as expected
[1]: https://gerrit.openbmc.org/c/openbmc/bmcweb/+/44270 [2]: https://redfish.dmtf.org/schemas/v1/MetricReportDefinition.v1_4_2.json
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: I5930a466a370f268d68f575a4a3db5ee9655e574
show more ...
|
3a1c297a | 10-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I1ac255c58971ac5cc4697b8bb1069067aad02d18 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
62c08e9b | 16-Sep-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Redesigned error handling
Current error handling send only error code, which is not enough to display detailed information. New error handling in additional to error code send property name. This al
Redesigned error handling
Current error handling send only error code, which is not enough to display detailed information. New error handling in additional to error code send property name. This allows to send meaningful messages back to used about errors.
Tested: - Old redfish code properly handles errors (reads only error_code) - Redfish version which read property name from error displays more detailed error information
Change-Id: I54caa20881ac3f3e38cb295a3aa95ddab491303f Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
show more ...
|
daeddc7c | 13-Oct-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Add missing header
Compilation was failing on g++-12, due to missing header in 1 file.
Testing done: - Compilation works on g++-12
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id:
Add missing header
Compilation was failing on g++-12, due to missing header in 1 file.
Testing done: - Compilation works on g++-12
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I658d9ff70dc02bcb541c6b42dff4e54b92a9e60f
show more ...
|
7e114c04 | 13-Oct-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Use clang-format-15
Some files required reformating.
Testing done: - Clang-format is passing on CI
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I39d53715840818ffabcb3903a5efc9
Use clang-format-15
Some files required reformating.
Testing done: - Clang-format is passing on CI
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I39d53715840818ffabcb3903a5efc97639ed48df
show more ...
|
0253f6d3 | 15-Sep-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Persistency: store special double values
Json library handles infinity and NaN as null. During deserialization, we expect a double and those files were marked as invalid and removed. To prevent this
Persistency: store special double values
Json library handles infinity and NaN as null. During deserialization, we expect a double and those files were marked as invalid and removed. To prevent this behavior and preserve all double values, LabeledTuple 'to_json' and 'from_json' functions were improved to accommodate those special values by using string literals.
Testing done: - UTs added for double<=>json conversion. - UTs passing.
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I9193df29cce1db28cda3c895d117d9f3bfca2c24
show more ...
|
bcf045a4 | 16-Sep-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Fix clang errors
- structs used in emplace_back now have defined constructor - removed dead code from ensure
Testing done: - CI tests are passing - UTs are passing
Signed-off-by: Szymon Dompke <sz
Fix clang errors
- structs used in emplace_back now have defined constructor - removed dead code from ensure
Testing done: - CI tests are passing - UTs are passing
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I3f56a3796e45d608c7a5d3da1f8c2d674d62f567
show more ...
|
a8182beb | 04-Jul-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
added Enabled to AddReportFutureVersion API
- New parameter added to API - Changed API to be more flexible in the future
Tested: - Unit tests are passing - Tested together with: https://gerrit.op
added Enabled to AddReportFutureVersion API
- New parameter added to API - Changed API to be more flexible in the future
Tested: - Unit tests are passing - Tested together with: https://gerrit.openbmc.org/c/openbmc/bmcweb/+/49796/23 POST, PATCH, PUT for MetricReportDefinitions are working correctly
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: Ic988446d283a581dc6866418b1b27a989c3bc9a0
show more ...
|
32305f14 | 05-Jul-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Add length limit for user-defined values
Previously, the only limit for most user-defined values like id or name was the one enforced by dbus, which was fairly big. In order to save space used by pe
Add length limit for user-defined values
Previously, the only limit for most user-defined values like id or name was the one enforced by dbus, which was fairly big. In order to save space used by persistent data, new meson options were added, with length limit for those fields.
This directly impacts following dbus interfaces: - TriggerManager.AddTrigger: - Id - Name - Reports - Thresholds (only name of discrete threshold) - Trigger.Name - Trigger.Reports - Trigger.Thresholds (only name of discrete threshold) - ReportManager.AddReport(FutureVersion): - Id - Name - MetricParameters (metricId) - Report.Name - Report.ReadingParameters (metricId)
For Id fields we support 'prefixes', which also are limited, but those limit are separate. So if limit for prefix is set to 5 and limit for id/name is set to 5, following Ids are fine: - 12345/12345 - 12345 and following are not: - 123456/1234 - 1/123456
Testing done: - UTs are passing. - new limits are reflected when calling mentioned dbus interfaces.
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I29291a1cc56a344d92fb65491c9186fdb90a8529
show more ...
|
1cdd7e4f | 08-Jun-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Use proper dbus path when possible.
Following methods and properties were updated to use full dbus path, instead of internal telemetry id: - TriggerManager.AddTrigger() - 'reportIds' arg - Trigger.R
Use proper dbus path when possible.
Following methods and properties were updated to use full dbus path, instead of internal telemetry id: - TriggerManager.AddTrigger() - 'reportIds' arg - Trigger.ReportIds - renamed to 'Reports' - Report.TriggerIds - renamed to 'Triggers'
Testing done: - UTs were updated and are passing.
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I78d812d38289fac575d25b48503cc8b9c6f736fe
show more ...
|
41fa80d8 | 09-Jun-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Minor refactoring in thresholds
No functional changes
Tested: - All unit tests are passing
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: I96360276cc7e7797a9e90a577804
Minor refactoring in thresholds
No functional changes
Tested: - All unit tests are passing
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: I96360276cc7e7797a9e90a577804e94014e0bd91
show more ...
|
973b4bb0 | 25-Apr-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
fixing Set on report properties
Setting valid value for property which is incorrect for current configuration will result in OK response, but will change ErrorMessages property. ErrorMessages will c
fixing Set on report properties
Setting valid value for property which is incorrect for current configuration will result in OK response, but will change ErrorMessages property. ErrorMessages will contain information about error type and property name.
Tested: - Change interval from 1000 to 0 for periodic report changes status from Enabled to Disabled. - Change interval from 0 to 1000 for periodic report changes status from Disabled to Enabled.
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I34add1ed0308b3da0850b1db6a67a217d11b6956
show more ...
|
36de0563 | 27-May-2022 |
Ed Tanous <edtanous@google.com> |
Include-what-you-use
This fixes a build error on the latest rebase by following the coding standard, and including the headers of the resources used. In this case, std::find is in the algorithm lib
Include-what-you-use
This fixes a build error on the latest rebase by following the coding standard, and including the headers of the resources used. In this case, std::find is in the algorithm library, so add that include.
Tested: Code compiles.
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: Icd62174faf57c769e114583c841181f2229c9c79
show more ...
|
aa572361 | 23-Mar-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Preserve original discrete trigger value
Currently, there are no 'real' discrete sensors, so discrete trigger is working with numeric ones. Dbus api is using string as thresholdValue, but internally
Preserve original discrete trigger value
Currently, there are no 'real' discrete sensors, so discrete trigger is working with numeric ones. Dbus api is using string as thresholdValue, but internally service is converting it to double. This resulted in side-effect of malformed value of Thresholds property, e.g., 90.0 being represented as 90.000000. This change stores original value in order to not confuse potential users.
Additionally, check was added to validate whole string of thesholdValue. Now, it must consist only of numeric characters, values like '12.3FOO' will be rejected on AddTrigger call.
Testing done: - UTs added and are passing, - dbus get-property on Thresholds confirms unchanged initial value.
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: Iec3514ac1479587e610f8da31ecf9ba6fc0bdb62
show more ...
|
55824558 | 18-Feb-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Fixed issue with displaying empty triggers
It was not possible to display empty triggers due to one of the property handlers returning error. This fixes handlers and proper value is returned instead
Fixed issue with displaying empty triggers
It was not possible to display empty triggers due to one of the property handlers returning error. This fixes handlers and proper value is returned instead.
Tested: - All unit tests are passing. - Can introspect empty triggers - Empty triggers are correctly listed in redfish
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: I1ce9a9a43faac5446911f0e44c638b4ca91adb82
show more ...
|
493e62eb | 14-Feb-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
made MetricValues persistent
MetricValues are persistent for reportUpdates AppendStopsWhenFull and reportingType different than OnRequest.
Tested: - New unit tests are passing - Confirmed MetricVal
made MetricValues persistent
MetricValues are persistent for reportUpdates AppendStopsWhenFull and reportingType different than OnRequest.
Tested: - New unit tests are passing - Confirmed MetricValues are preserved after restarting telemetry service
Change-Id: I7e1990fb391da9debb0d7df2f1dbda86473350cc Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
show more ...
|
f7ea2997 | 27-Jan-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
added support for onChange report
Report is now notified when metric changes and updates reading values.
Tested: - Added new unit tests - OnChange report updates Readings when metric values cha
added support for onChange report
Report is now notified when metric changes and updates reading values.
Tested: - Added new unit tests - OnChange report updates Readings when metric values changes
Change-Id: I3be9ef7aa0486cb15bac627aa1de5cc632613b3b Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
show more ...
|
fdb06a14 | 11-Feb-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Report: make dbus properties writable
ReadingParametersFutureVersion interface for Reports is enhanced from read-only to read write and supports modification of readingParameteres, which is done by
Report: make dbus properties writable
ReadingParametersFutureVersion interface for Reports is enhanced from read-only to read write and supports modification of readingParameteres, which is done by updating metrics at the first place and re-registering them for sensors updates. Similar ReportActions interface is enhanced to read write. Additionally reportActions policy was modified that reports always contain 'LogToMetricReportsCollection' action. The whole change enables Redfish support for PATCH method added on webserver side.
Tested: - New unit tests were created, ran all new and previous UTs, all passed - Tested under QEMU, interface was checked for RW via dbus cli commands, checked if Reading Parameters of the Report can be read or written, if metrics are properly updated and registration/unregistration for updates works properly, checked if actions of Report can be read or written, if actions are properly updated and related action behavior follows the change accordingly - Tested under QEMU, verified if 'LogToMetricReportsCollection' action is always added when Report is created or when actions of Report are updated by dbus interface - Tested via webserver if it communicates properly with dbus interfaces of Telemetry and read/write operations via Redfish can be successfully executed
Signed-off-by: Lukasz Kazmierczak <lukasz.kazmierczak@intel.com> Change-Id: I7f2fe8eae1631c436cf61a516d5fd0b8358a76bd
show more ...
|
60fee077 | 13-Jan-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
added property SupportedOperationTypes
- removed OperationType::single - for backward compatibility incomming OperationType::single alted to produce same output functionality - added property Supp
added property SupportedOperationTypes
- removed OperationType::single - for backward compatibility incomming OperationType::single alted to produce same output functionality - added property SupportedOperationTypes to ReportManager interface
Tested: - In cases where OperationType::single is used same MetricValues are produced - New property is visible on dbus
Change-Id: I838581c954abc0d8401e0ed530ce7e9c8013860b Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
show more ...
|
e6d48874 | 08-Feb-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Removed dependency to TriggerManager
introduces Messanger class which allows to send messages directly to subscribed targets, which allows to break dependencies between classes.
Testes: - All unit
Removed dependency to TriggerManager
introduces Messanger class which allows to send messages directly to subscribed targets, which allows to break dependencies between classes.
Testes: - All unit tests are passing - Links are correctly updated - Report is correctly updated by Trigger Action
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: I32d3aaba22f9ec07e611f53fe553bd27e1c04c6d
show more ...
|
94f71c51 | 10-Dec-2021 |
Szymon Dompke <szymon.dompke@intel.com> |
Trigger: make dbus properties writable
This change allows to modify 'Sensors', 'ReportNames' and 'Thresholds' dbus properties of Trigger interface. They are required by Redfish to implement PATCH fu
Trigger: make dbus properties writable
This change allows to modify 'Sensors', 'ReportNames' and 'Thresholds' dbus properties of Trigger interface. They are required by Redfish to implement PATCH functionality for Trigger schema.
Some backend changes were required to enable this functionality, and as such few improvements were made for existing code: - NumericThreshold and DiscreteThreshold now have common implementation where it was possible. - Internal sensor info structure for Trigger is now the same as the one used for Report. This resulted in breaking compatibility with previous Trigger persistency data. - Added getInfo / getParams methods for Sensor and Threshold interfaces. They are used by Trigger dbus getters and persistency mechanism now, instead of storing this data in Trigger object.
Testing done: - Unit tests were expanded and are passing - dbus setters for Sensors and Thresholds are working and modifications are reflected by calling appropriate getters.
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I7a14c15a30d78ce872342b5f938aba43c77be9c0
show more ...
|
a950e42b | 31-Dec-2021 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Added constrains to id generator
This commit prevents id with more than one '/'. Slash can be used to create namespaces to avoid id conflicts between multiple users.
Changed generator logic to take
Added constrains to id generator
This commit prevents id with more than one '/'. Slash can be used to create namespaces to avoid id conflicts between multiple users.
Changed generator logic to take provided id as a name if no name was provided.
Tested: - Tested that id and name generates correctly - It is no longer possible to add id with more than one '/'
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: Ieef32ddb71b5a4870117aab0d624cbd46b5893e6
show more ...
|