History log of /openbmc/telemetry/tests/meson.build (Results 1 – 25 of 25)
Revision Date Author Comments
# 4444a13c 08-Dec-2023 Patrick Williams <patrick@stwcx.xyz>

meson: adjust nlohmann-json dependency

- Simplify nlohmann-json dependency in meson.build.
- Use consistent dependency variable names (based on Meson style).
- Align wrap file name with meson wrapdb

meson: adjust nlohmann-json dependency

- Simplify nlohmann-json dependency in meson.build.
- Use consistent dependency variable names (based on Meson style).
- Align wrap file name with meson wrapdb choice for the project.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I2e893fd8c300b36a16d704f2002bb966a6e52ce4

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 ...


# 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 ...


# 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 ...


# 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 ...


# 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 ...


# b8cc78dd 29-Nov-2021 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

Api changes in AddReportFuture version

Added support for CollectionFunction, CollectionDuration,
CollectionTimeScope, ReportUpdates, AppendLimit.

New API separates Id and Name, user can decide to p

Api changes in AddReportFuture version

Added support for CollectionFunction, CollectionDuration,
CollectionTimeScope, ReportUpdates, AppendLimit.

New API separates Id and Name, user can decide to pass only Name
to auto generate Id or pass Id which needs to be unique.

Tested:
- No functional changes to old API, everything works as before
- All use cases can be replaced with new API to achieve same results
- New features which require new API work as expected

Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
Change-Id: I647efab36d90a548754f89968223e162a087481e

show more ...


# 8069771c 04-Mar-2021 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

added support for Collection Functions

new supported operations: min,max,sum,avg
new supported time scopes: interval,startup

added unit test to verify that each collection function returns correct

added support for Collection Functions

new supported operations: min,max,sum,avg
new supported time scopes: interval,startup

added unit test to verify that each collection function returns correct
timestamp and value

Tested:
- POST/GET on telemetry features in bmcweb, no regression detected
- Using dbus API metric with collection function works as expected

Change-Id: Ib364c433915e07fd7a102f00109525362c40ab8a
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>

show more ...


# a74e44f6 23-Jul-2021 Lukasz Kazmierczak <lukasz.kazmierczak@intel.com>

Extending meson build system to support fast compilation during development stage

Tested compilation against 3 build configurations
- with lto for src and tests/src (for release sw):
all: ~3 min;

Extending meson build system to support fast compilation during development stage

Tested compilation against 3 build configurations
- with lto for src and tests/src (for release sw):
all: ~3 min; change in cpp file: ~2 min
- with lto for src and no_lto for tests/src (for release sw):
all: ~2 min; change in cpp file:~ 40 sec
- after using scripts/configure_fast_compilation.sh (for development only):
all: ~1.75 min; change in cpp file: ~20 sec

Signed-off-by: Lukasz Kazmierczak <lukasz.kazmierczak@intel.com>
Change-Id: Idf435d8455260d2d988cb7286d71401f21fd03e2

show more ...


# dcc4e193 08-Mar-2021 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

created AddReportFutureVersion dbus method

New method will support CollectionTimeScope, CollectionDuration

In order to make not breaking interface changes bmcweb will switch to
AddReportFutureVersi

created AddReportFutureVersion dbus method

New method will support CollectionTimeScope, CollectionDuration

In order to make not breaking interface changes bmcweb will switch to
AddReportFutureVersion, then AddReport will be changed to match
AddReportFutureVersion, then redfish will switch back to use AddReport,
then AddReportFutureVersion will be removed.

Tested:
- Verified that current version of bmcweb works fine with old API

Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
Change-Id: I51a9b7fb2f4da5b8d2f688ccd5e93710352b1ac7

show more ...


# 4416fce6 16-Mar-2021 Cezary Zwolak <cezary.zwolak@intel.com>

Read persistent triggers from storage

Read json storage file for persistent triggers.
Add trigger to telemetry service.
Cover code with UTs.

Tested:
- Passed unit tests
- Tested on QEMU
* s

Read persistent triggers from storage

Read json storage file for persistent triggers.
Add trigger to telemetry service.
Cover code with UTs.

Tested:
- Passed unit tests
- Tested on QEMU
* starting app without configuration
* restart app with configuration stored
* restart app with configuration in incorrect version
* restart app with configuration malformed

Change-Id: I2cb9324abdb8323be8a7f0c932ed7f70c5bc2891
Signed-off-by: Cezary Zwolak <cezary.zwolak@intel.com>
Signed-off-by: Lukasz Kazmierczak <lukasz.kazmierczak@intel.com>

show more ...


# f763c9e3 12-Mar-2021 Szymon Dompke <szymon.dompke@intel.com>

Added discrete threshold trigger support

Implemented discrete threshold logic
Discrete trigger with empty threshold array is handled as 'onChange'
Added unit tests coverage for discrete trigger

Sup

Added discrete threshold trigger support

Implemented discrete threshold logic
Discrete trigger with empty threshold array is handled as 'onChange'
Added unit tests coverage for discrete trigger

Supported scenarios:
-discrete threshold with value and dwell time
-discrete threshold with value, without dwell time
-discrete trigger without threshold ('onChange')

Tests:
-Unit tests passed

Change-Id: Id60a48f4113bd955d97e154888c00d1b6e5490af
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com>

show more ...


# 596a9945 27-Jan-2021 Wludzik, Jozef <jozef.wludzik@intel.com>

Fix meson file and remove warnings from compilation

Fixed meson file by applying proper dependency. Removed boost from
subprojects because boost does not support cmake and meson. User
is able to bui

Fix meson file and remove warnings from compilation

Fixed meson file by applying proper dependency. Removed boost from
subprojects because boost does not support cmake and meson. User
is able to build boost manually or using a script
boost_build_1.74.0.sh and set BOOST_ROOT variable to build files.
Then reruning meson should detect boost dependency with positive
result.

Removed all warnings from compilation by applying a new flag for
boost - BOOST_ALLOW_DEPRECATED_HEADERS, after boost update this
flag should be removed. Changed tmpnam() with temp_directory_path
provided by std::filesystem.

Tested:
- Built telemetry with success in cases when different components
are not installed on system: nlohmann, sdbusplus, googletest,
phosphor-logging.
- Using BOOST_ROOT variable that points to installation location
of boost allows to build telemetry wihtout boost installed on
system.
- Unit test passed.

Change-Id: I8d430f4c51b7bc6669c8533e1a76c4666efd4fc6
Signed-off-by: Wludzik, Jozef <jozef.wludzik@intel.com>

show more ...


# d960e1f3 08-Jan-2021 Wludzik, Jozef <jozef.wludzik@intel.com>

Implement Trigger Actions

Now action is triggered when threshold is crossed. There are 3
actions: write message to journal, write message to journal as
Redfish Event and update an existing Report.
T

Implement Trigger Actions

Now action is triggered when threshold is crossed. There are 3
actions: write message to journal, write message to journal as
Redfish Event and update an existing Report.
To update an existing Report updateReading method is changed to
public. Added UpdateReport to ReportManager, now object is able
to update readings of any report using report name.

Tested:
- Unit tests passed
- Verified that logs are propagated to journal when threshold
is crossed

Change-Id: Iebca7c8b9ab9b50b4c401877ccf8c2f01f1e6f36
Signed-off-by: Wludzik, Jozef <jozef.wludzik@intel.com>

show more ...


# 1477fe6a 02-Jan-2021 Wludzik, Jozef <jozef.wludzik@intel.com>

Implement NumericThreshold for Trigger

Implemented NumericThreshold for Trigger that allows to set
expected threshold value for collection of sensors and monitors
if this value is crossed. Implement

Implement NumericThreshold for Trigger

Implemented NumericThreshold for Trigger that allows to set
expected threshold value for collection of sensors and monitors
if this value is crossed. Implemented detection of direction
when threshold value is crossed. Added initial interface that
is used to commit an action when threshold value is crossed.
Moved Sensor Cache from Report Factory to Telemetry class, now
Sensor Cache is shared between Report Factory and Trigger Factory.
Moved fetching sensor from Dbus to seperate header to have single
implementation for factories.
Disabled tests that uses boost coroutine because of false positive
that is catched by address sanitizer.

Tested:
- Passed unit tests
- Built in yocto envrionment with success
- Telemetry service started successfully in OpenBMC

Change-Id: I1ff7ab96174a27576786f0b9a71554fe1eeff436
Signed-off-by: Wludzik, Jozef <jozef.wludzik@intel.com>

show more ...


# 76833cb5 21-Dec-2020 Wludzik, Jozef <jozef.wludzik@intel.com>

Add TriggerManager and Trigger objects

Implemented initial version of Trigger and TriggerManager DBus
interfaces. Now DBus user is able to add new Trigger and delete it.
There is no support for othe

Add TriggerManager and Trigger objects

Implemented initial version of Trigger and TriggerManager DBus
interfaces. Now DBus user is able to add new Trigger and delete it.
There is no support for other functionality added.

Tested:
- Built using yocto dependencies with success
- Unit tests passed
- Verified manually if Trigger and TriggerManager works as
expected

Change-Id: Ie68463526ecccc3be67cc7bfaaf9a9aa7326dee6
Signed-off-by: Wludzik, Jozef <jozef.wludzik@intel.com>

show more ...


# 6ccfcbf5 04-Nov-2020 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

Created metric class

Metric collects updates from sensor. Report displays metric readings
depending on reportingType.

Tested:
- Added new units tests for Metric class
- All other unit tests are

Created metric class

Metric collects updates from sensor. Report displays metric readings
depending on reportingType.

Tested:
- Added new units tests for Metric class
- All other unit tests are passing

Change-Id: I19f4831fab163a4f9540cef7bb23e903ae90fddf
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>

show more ...


# e2362796 27-Oct-2020 Wludzik, Jozef <jozef.wludzik@intel.com>

Implement Report persistency

Now Report properties are stored in non-volatile memory. It allows
to restore Report after system restart. Persistency of a report is
controlled by Persistency property

Implement Report persistency

Now Report properties are stored in non-volatile memory. It allows
to restore Report after system restart. Persistency of a report is
controlled by Persistency property in Report interface.

Tested:
- Passed unit tests
- Verified that report is stored in /var/lib/telemetry dir
- Verified that report is restored from storage after telemetry
service start

Signed-off-by: Wludzik, Jozef <jozef.wludzik@intel.com>
Change-Id: Iccfe21603eecffc4e174a4403f699b03de320db9

show more ...


# c8e3a64a 23-Oct-2020 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

Added Periodic reportingType support to Report

When report interval expires report will collect readings from
metrics and update timestamp.

Tested:
- Added new units tests covering added code
-

Added Periodic reportingType support to Report

When report interval expires report will collect readings from
metrics and update timestamp.

Tested:
- Added new units tests covering added code
- All existing unit tests are passing

Change-Id: I7f23ca05d77efb0f18d2c0d0f138c524ffb4f6af
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>

show more ...


# 2f9f9b87 13-Oct-2020 Wludzik, Jozef <jozef.wludzik@intel.com>

Add ReportManager and Report unit tests

Introduced ReportFactory to seperate Report and ReportManager
unit tests. Implemented mocks for Report, ReportManager and
ReportFactory classes. Added tests f

Add ReportManager and Report unit tests

Introduced ReportFactory to seperate Report and ReportManager
unit tests. Implemented mocks for Report, ReportManager and
ReportFactory classes. Added tests for DBus Properties and Methods
provided by telemetry service.

Tested:
- Ran unit-tests with success

Change-Id: I1860e280d26ee4becc52de98dd65e5697d26b376
Signed-off-by: Wludzik, Jozef <jozef.wludzik@intel.com>

show more ...


# b5645947 29-Sep-2020 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

Implemented sensor class

Sensor class was introduced, it monitors
xyz.openbmc_project.Sensor.Value, for change and notifies all
listeners.

Tested:
- Unit tested with service stub that provides db

Implemented sensor class

Sensor class was introduced, it monitors
xyz.openbmc_project.Sensor.Value, for change and notifies all
listeners.

Tested:
- Unit tested with service stub that provides dbus interface
xyz.openbmc_project.Sensor.Value
- All changes are delivered to listeners
- All other unit tests are passing

Change-Id: I8c9d58cc986c1fe2a4d2386815d559814016efa6
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>

show more ...


# 7f06f613 24-Sep-2020 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

Created sensor cache class

Created sensor cache and sensor interface that needs to be
implemented by sensors.

Tested:
- Sensors created by sensor cache are stored and reused if
there is try to ac

Created sensor cache class

Created sensor cache and sensor interface that needs to be
implemented by sensors.

Tested:
- Sensors created by sensor cache are stored and reused if
there is try to access same sensor multiple times.
- All other units tests are passing

Change-Id: I552b2016bca4688e1b2a223297587826af256b54
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>

show more ...


# 73da6906 24-Sep-2020 Krzysztof Grobelny <krzysztof.grobelny@intel.com>

Added PersistentJsonStorageClass

PersistentJsonStorage is used to store persistent information in
json format. This class will be used by ReportManager to save
persistent report configuration.

Test

Added PersistentJsonStorageClass

PersistentJsonStorage is used to store persistent information in
json format. This class will be used by ReportManager to save
persistent report configuration.

Tested:
- Added unit tests for new functionality
- All other unit tests are passing

Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
Change-Id: Ib496e6782e849d910fe37c02c355047afda5c79c

show more ...