tree 6419cb8a4cf5a815dbeaf01365a8ec224194380a
parent 71b9c11676a08d7659c0d88a39c4de688d0feedd
author Tao Lin <lintao.lc@inspur.com> 1658926940 +0800
committer Patrick Williams <patrick@stwcx.xyz> 1667319368 +0000

Update threshold to entity-manager

Save path&interface when creating thresholds,and then set DBUS value
corresponding to path&interface when setting thresholds;

I have a requirement to set the threshold to restart without losing.  In
addition, I can see that the threshold can be saved in the file in the
entity-manager, which can meet my requirements.

Data flow:
Old version: IPMI set threshold -> virtualsensors (DBUS) What
I want to achieve: IPMI set threshold -> virtualsensors (DBUS) ->
filesystem

I found that it can be implemented as follows: IPMI set
threshold -> virtual-sensors (DBUS) -> entitymanager -> filesystem

Because the threshold setting in dbus-sensors is: IPMI set threshold ->
dbus-sensors (DBUS) -> entitymanager -> filesystem

Tested:

The following print result shows this process:
IPMI set threshold -> virtual sensors (DBUS) -> entitymanager

root@NULL:~# busctl introspect   xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/nvme/NVMe_MAX/NVMe_MAX_Temp xyz.openbmc_project.Configuration.ModifiedMedian.Thresholds0
NAME                                                         TYPE      SIGNATURE RESULT/VALUE     FLAGS
.Delete                                                      method    -         -                -
.Direction                                                   property  s         "greater than"   emits-change writable
.Name                                                        property  s         "upper critical" emits-change writable
.Severity                                                    property  d         1                emits-change writable
.Value                                                       property  d         116              emits-change writable
root@NULL:~# ipmitool sensor list | grep NVM
NVMe_MAX_Temp    | na         | degrees C  | na    | na        | 1.000     | 6.000     | 111.000   | 116.000   | na
root@NULL:~# ipmitool sensor thresh NVMe_MAX_Temp ucr 119
Locating sensor record 'NVMe_MAX_Temp'...
Setting sensor "NVMe_MAX_Temp" Upper Critical threshold to 119.000
root@NULL:~# ipmitool sensor list | grep NVM
NVMe_MAX_Temp    | na         | degrees C  | na    | na        | 1.000     | 6.000     | 111.000   | 119.000   | na
root@NULL:~# busctl introspect   xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/nvme/NVMe_MAX/NVMe_MAX_Temp xyz.openbmc_project.Configuration.ModifiedMedian.Thresholds0
NAME                                                         TYPE      SIGNATURE RESULT/VALUE     FLAGS
.Delete                                                      method    -         -                -
.Direction                                                   property  s         "greater than"   emits-change writable
.Name                                                        property  s         "upper critical" emits-change writable
.Severity                                                    property  d         1                emits-change writable
.Value                                                       property  d         119              emits-change writable
root@NULL:~# busctl introspect   xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/nvme/NVMe_MAX/NVMe_MAX_Temp xyz.openbmc_project.Configuration.ModifiedMedian.Thresholds0
NAME                                                         TYPE      SIGNATURE RESULT/VALUE     FLAGS
.Delete                                                      method    -         -                -
.Direction                                                   property  s         "greater than"   emits-change writable
.Name                                                        property  s         "upper critical" emits-change writable
.Severity                                                    property  d         1                emits-change writable
.Value                                                       property  d         119              emits-change writable
root@NULL:~#

Signed-off-by: Tao Lin <lintao.lc@inspur.com>
Change-Id: I0f5eeb06d0b3aaf4f5806bfa68672dedcb087f26
