commit | 87d351153bc4aab46f61221aab67bc98b8a40e1e | [log] [tgz] |
---|---|---|
author | Lei YU <yulei.sh@bytedance.com> | Mon Oct 24 05:54:25 2022 +0000 |
committer | Lei YU <yulei.sh@bytedance.com> | Sat Oct 07 17:07:09 2023 +0800 |
tree | 1716f59df96dd47c50535ee19d5f297fe25230c6 | |
parent | 0ab9d8388afe4a01c8b2ecea7bea042d2b4646dd [diff] |
exprkt: Add sumIgnoreNaN to ignore the NaN value Arithmetic with `nan` values is not expected in virtual sensor's case. Adding a new exprkt function `sumIgnoreNaN` to handle this case, that it ignores all `nan` values. If all values are `nan` then it returns `nan`, otherwise it returns the sum of the valid values. Example usage in json config: ``` "Expression": "sumIgnoreNaN(T0, T1, T2, T3)" ``` Signed-off-by: Lei YU <yulei.sh@bytedance.com> Change-Id: I0cbd87f038499b4ea3ab722c003adc795a11c2b3
phosphor-virtual-sensor reads the configuration file virtual_sensor_config.json
from one of three locations:
/var/lib/phosphor-virtual-sensor
/usr/share/phosphor-virtual-sensor
By default the repository will install a sample config into (3).
There are two types of data in this file.
See virtual_sensor_config.json
in this repository for an example. Sensors added this way can use any expression that is accepted by exprtk.
For example:
{ "Desc": { "Config": "D-Bus", "Type": "ModifiedMedian" } }
Sensors added this way can only use a set of restricted calculations. Currently the only type supported is modifiedMedian
.
The virtual sensor configuration information needs to be added into the relevant hardware configuration file in entity-manager. This method of adding a virtual sensor allows a recipe that builds for different hardware configurations to have different virtual sensors for each configuration.
The virtual sensor configuration in entity manager follows a different format to the JSON in virtual_sensor_config.json
(specified in entity-manager/schemas/VirtualSensor.json).