问题描述
配置了6个电压的ThresholdSensor,reading值来自与自己配置的对象,想法是参考ThresholdSensor_CPU1TBDVFS对象,当前需要的对象MyCSRModel_Chip_Adc0_1存在,里面的值也是刷新的,但是传感器这边的值有时候是0,有时候有值,有值的时候好像也保持一个数字不更新。
一开始是高低告警门限配置错了,后来门限改对了,现象还是一样
这种是可以读到值的时候,这个Reading值是223
%lsprop ThresholdSensor_Adc0_1Sensor_0101
bmc.kepler.Object.Properties
ClassName="ThresholdSensor"
ObjectIdentifier=[1,"1","1","0101"]
ObjectName="ThresholdSensor_Adc0_1Sensor_0101"
TraceSamplingRate=0
bmc.kepler.Systems.ThresholdSensor
Capabilities=232
EntityId=98
EntityInstance=102
LowerCritical=150
LowerNoncritical=0
LowerNonrecoverable=0
NegativeHysteresis=4
OriginalReading=0
OwnerLun=0
PositiveHysteresis=4
Reading=223
ReadingMask=4626
ReadingStatus=0
SensorIdentifier=""
SensorName="Adc0_1 voltage Sensor"
SensorNumber=8
SensorType=2
UpperCritical=240
UpperNoncritical=0
UpperNonrecoverable=0
bmc.kepler.Systems.ThresholdSensorDisplay
AssertStatus=0
Health="OK"
LowerCriticalDisplay="0.750"
LowerNoncriticalDisplay="0.000"
LowerNonrecoverableDisplay="0.000"
NegativeHysteresisDisplay="0.020"
PositiveHysteresisDisplay="0.020"
ReadingDisplay="1.115"
Status="Enabled"
UnitDisplay="Volts"
UpperCriticalDisplay="1.200"
UpperNoncriticalDisplay="0.000"
UpperNonrecoverableDisplay="0.000"
Private
Accuracy=0
Analog=1
AssertMask=516
B=0
BA=0
BaseUnit=4
BelongsToSystem=false
DeassertMask=516
Initialization=127
IsValid=true
Linearization=0
M=5
MT=0
MaximumReading=127
MinimumReading=0
ModifierUnit=0
NominalReading=90
NormalMaximum=0
NormalMinimum=0
OwnerId=32
RBExp=208
ReadingType=1
Unit=0
下面这个是读不到值的时候,Reading值是0
% lsprop ThresholdSensor_Adc0_1Sensor_0101
bmc.kepler.Object.Properties
ClassName="ThresholdSensor"
ObjectIdentifier=[1,"1","1","0101"]
ObjectName="ThresholdSensor_Adc0_1Sensor_0101"
TraceSamplingRate=0
bmc.kepler.Systems.ThresholdSensor
Capabilities=232
EntityId=98
EntityInstance=102
LowerCritical=150
LowerNoncritical=0
LowerNonrecoverable=0
NegativeHysteresis=4
OriginalReading=0
OwnerLun=0
PositiveHysteresis=4
Reading=0
ReadingMask=4626
ReadingStatus=0
SensorIdentifier=""
SensorName="Adc0_1 voltage Sensor"
SensorNumber=8
SensorType=2
UpperCritical=240
UpperNoncritical=0
UpperNonrecoverable=0
bmc.kepler.Systems.ThresholdSensorDisplay
AssertStatus=4
Health="Major"
LowerCriticalDisplay="0.750"
LowerNoncriticalDisplay="0.000"
LowerNonrecoverableDisplay="0.000"
NegativeHysteresisDisplay="0.020"
PositiveHysteresisDisplay="0.020"
ReadingDisplay="0.000"
Status="Enabled"
UnitDisplay="Volts"
UpperCriticalDisplay="1.200"
UpperNoncriticalDisplay="0.000"
UpperNonrecoverableDisplay="0.000"
Private
Accuracy=0
Analog=1
AssertMask=516
B=0
BA=0
BaseUnit=4
BelongsToSystem=false
DeassertMask=516
Initialization=127
IsValid=true
Linearization=0
M=5
MT=0
MaximumReading=127
MinimumReading=0
ModifierUnit=0
NominalReading=90
NormalMaximum=0
NormalMinimum=0
OwnerId=32
RBExp=208
ReadingType=1
Unit=0
看了一下区别,AssertStatus不一样,但是没有地方解释这里的AssertStatus=4是什么意思,只找到如下的解释:
AssertStatus U16 只读 变更广播 传感器SEL事件状态,bit0 - bit14依次对应15种offset的离散事件状态,1:Assert;0:Deassert
环境信息
2509版本
属性来源时这个dbus
~ ~ $ busctl --user introspect bmc.kepler.complex_sensor /bmc/demo/MyCSRModel/MyCSRModel_Chip_Adc0_1_0101 | cat
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
bmc.demo.OpenUBMC.Reading interface - - -
.Channel property y 1 emits-change
.Chip property y 0 emits-change
.TemperatureCelsius property n 1116 emits-change writable
.Value property t 1116 emits-change writable
bmc.kepler.Object.Properties interface - - -
.GetAllWithContext method a{ss}s a{sv} -
.GetOptions method a{ss}ss a{ss} -
.GetPrivateProperties method a{ss} s -
.GetPropertiesByNames method a{ss}sas a{sv}a{sv} -
.GetPropertiesByOptions method a{ss}sa{ss} as -
.GetPropertyDetail method a{ss}ss s -
.GetWithContext method a{ss}ss v -
.SetWithContext method a{ss}ssv - -
.ClassName property s "MyCSRModel" emits-change
.ObjectIdentifier property (ysss) 1 "1" "1" "0101" emits-change
.ObjectName property s "MyCSRModel_Chip_Adc0_1_0101" emits-change
.TraceSamplingRate property d 0 emits-change
org.freedesktop.DBus.Introspectable interface - - -
.Introspect method - s -
org.freedesktop.DBus.ObjectManager interface - - -
.GetManagedObjects method - a{oa{sa{sv}}} -
org.freedesktop.DBus.Peer interface - - -
.GetMachineId method - s -
.Ping method - - -
org.freedesktop.DBus.Properties interface - - -
.Get method ss v -
.GetAll method s a{sv} -
.Set method ssv - -
.PropertiesChanged signal sa{sv}as - -
mds里面的配置是
{
"bmc.demo.OpenUBMC.Reading": {
"properties": {
"TemperatureCelsius": {
"baseType": "S16",
"descriptions": "OpenUBMC示例中的温度读值"
},
"Chip": {
"baseType": "U8",
"readOnly": true,
"description": "Chip"
},
"Channel": {
"baseType": "U8",
"readOnly": true,
"description": "Channel"
},
"Value": {
"baseType": "U64",
"description": "从芯片读到的值",
"options": {
"emitsChangedSignal": "true"
}
}
}
}
}
sr里面的配置是:
"ThresholdSensor_Adc0_1Sensor": {
"OwnerId": 32,
"OwnerLun": 0,
"EntityId": "<=/Entity_Adc0_1Sensor.Id",
"EntityInstance": "<=/Entity_Adc0_1Sensor.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 2,
"ReadingType": 1,
"SensorName": "Adc0_1 voltage Sensor",
"Unit": 0,
"BaseUnit": 4,
"ModifierUnit": 0,
"Analog": 1,
"NominalReading": 90,
"NormalMaximum": 0,
"NormalMinimum": 0,
"MaximumReading": 255,
"MinimumReading": 0,
"Reading": "<=/MyCSRModel_Chip_Adc0_1.Value |> expr($1 / 5)",
"AssertMask": 516,
"DeassertMask": 516,
"ReadingMask": 4626,
"Linearization": 0,
"M": 5,
"RBExp": 208,
"UpperCritical": 240,
"LowerCritical": 150,
"PositiveHysteresis": 4,
"NegativeHysteresis": 4
},
从sensor的日志看,有时候能成功,打印的是
1970-01-01 02:09:48.818462 sensor NOTICE: sensor_instance.lua(542): Adc1_0 voltage Sensor|{"value":[1129],"type":"synchronization","source":{"properties":[{"Service":"bmc.kepler.complex_sensor","Interface":"bmc.demo.OpenUBMC.Reading","Property":"Value","Path":"/bmc/demo/MyCSRModel/MyCSRModel_Chip_Adc1_0_0101"}],"expressions":["expr($1 / 5)"]}}
1970-01-01 02:09:48.918463 sensor NOTICE: sensor_instance.lua(542): Adc1_0 voltage Sensor|{"value":[1129],"type":"synchronization","source":{"properties":[{"Service":"bmc.kepler.complex_sensor","Interface":"bmc.demo.OpenUBMC.Reading","Property":"Value","Path":"/bmc/demo/MyCSRModel/MyCSRModel_Chip_Adc1_0_0101"}],"expressions":["expr($1 / 5)"]}}
1970-01-01 02:09:49.025074 sensor NOTICE: sel_management.lua(688): add sel[{"SensorName":"Adc1_0 voltage Sensor","RecordSeq":476,"SubjectName":"Adc1_0 voltage Sensor","SensorType":2,"SensorId":"ThresholdSensor_Adc1_0Sensor_0101","SelEventType":129,"SensorNumber":13,"SelMsgVersion":4,"GenerateId":32,"Timestamp":7788,"SelType":2,"RecordId":476,"SelData3":150,"SelData2":225,"SelData1":82}] successfully, record id is 476
1970-01-01 02:09:49.025392 sensor NOTICE: sensor_instance.lua(582): [ThresholdSensor_Adc1_0Sensor_0101] deassert an event [reading: 225, LowerCritical threshold: 150]
1970-01-01 02:09:49.411985 sensor NOTICE: sensor_instance.lua(542): Adc1_2 voltage Sensor|{"value":[843],"type":"synchronization","source":{"properties":[{"Service":"bmc.kepler.complex_sensor","Interface":"bmc.demo.OpenUBMC.Reading","Property":"Value","Path":"/bmc/demo/MyCSRModel/MyCSRModel_Chip_Adc1_2_0101"}],"expressions":["expr($1 / 5)"]}}
1970-01-01 02:09:49.536823 sensor NOTICE: sensor_instance.lua(542): Adc1_2 voltage Sensor|{"value":[843],"type":"synchronization","source":{"properties":[{"Service":"bmc.kepler.complex_sensor","Interface":"bmc.demo.OpenUBMC.Reading","Property":"Value","Path":"/bmc/demo/MyCSRModel/MyCSRModel_Chip_Adc1_2_0101"}],"expressions":["expr($1 / 5)"]}}
1970-01-01 02:09:49.731862 sensor NOTICE: sel_management.lua(688): add sel[{"SensorName":"Adc1_0 voltage Sensor","RecordSeq":477,"SubjectName":"Adc1_0 voltage Sensor","SensorType":2,"SensorId":"ThresholdSensor_Adc1_0Sensor_0101","SelEventType":129,"SensorNumber":13,"SelMsgVersion":4,"GenerateId":32,"Timestamp":7789,"SelType":2,"RecordId":477,"SelData3":150,"SelData2":225,"SelData1":82}] successfully, record id is 477
1970-01-01 02:09:49.732214 sensor NOTICE: sensor_instance.lua(582): [ThresholdSensor_Adc1_0Sensor_0101] deassert an event [reading: 225, LowerCritical threshold: 150]
1970-01-01 02:09:50.305392 sensor NOTICE: sel_management.lua(688): add sel[{"SensorName":"Adc1_2 voltage Sensor","RecordSeq":478,"SubjectName":"Adc1_2 voltage Sensor","SensorType":2,"SensorId":"ThresholdSensor_Adc1_2Sensor_0101","SelEventType":129,"SensorNumber":14,"SelMsgVersion":4,"GenerateId":32,"Timestamp":7789,"SelType":2,"RecordId":478,"SelData3":150,"SelData2":168,"SelData1":82}] successfully, record id is 478
1970-01-01 02:09:50.305760 sensor NOTICE: sensor_instance.lua(582): [ThresholdSensor_Adc1_2Sensor_0101] deassert an event [reading: 168, LowerCritical threshold: 150]
1970-01-01 02:09:50.562563 sensor NOTICE: sel_management.lua(688): add sel[{"SensorName":"Adc1_2 voltage Sensor","RecordSeq":479,"SubjectName":"Adc1_2 voltage Sensor","SensorType":2,"SensorId":"ThresholdSensor_Adc1_2Sensor_0101","SelEventType":129,"SensorNumber":14,"SelMsgVersion":4,"GenerateId":32,"Timestamp":7790,"SelType":2,"RecordId":479,"SelData3":150,"SelData2":168,"SelData1":82}] successfully, record id is 479
1970-01-01 02:09:50.569275 sensor NOTICE: sensor_instance.lua(582): [ThresholdSensor_Adc1_2Sensor_0101] deassert an event [reading: 168, LowerCritical threshold: 150]
1970-01-01 02:09:51.705956 sensor NOTICE: sensor_instance.lua(542): Adc1_1 voltage Sensor|{"value":[1117],"type":"synchronization","source":{"properties":[{"Service":"bmc.kepler.complex_sensor","Interface":"bmc.demo.OpenUBMC.Reading","Property":"Value","Path":"/bmc/demo/MyCSRModel/MyCSRModel_Chip_Adc1_1_0101"}],"expressions":["expr($1 / 5)"]}}
1970-01-01 02:09:51.875636 sensor NOTICE: sensor_instance.lua(542): Adc1_1 voltage Sensor|{"value":[1117],"type":"synchronization","source":{"properties":[{"Service":"bmc.kepler.complex_sensor","Interface":"bmc.demo.OpenUBMC.Reading","Property":"Value","Path":"/bmc/demo/MyCSRModel/MyCSRModel_Chip_Adc1_1_0101"}],"expressions":["expr($1 / 5)"]}}
1970-01-01 02:09:52.027261 sensor NOTICE: sel_management.lua(688): add sel[{"SensorName":"Adc1_1 voltage Sensor","RecordSeq":480,"SubjectName":"Adc1_1 voltage Sensor","SensorType":2,"SensorId":"ThresholdSensor_Adc1_1Sensor_0101","SelEventType":129,"SensorNumber":16,"SelMsgVersion":4,"GenerateId":32,"Timestamp":7791,"SelType":2,"RecordId":480,"SelData3":150,"SelData2":223,"SelData1":82}] successfully, record id is 480
1970-01-01 02:09:52.028174 sensor NOTICE: sensor_instance.lua(582): [ThresholdSensor_Adc1_1Sensor_0101] deassert an event [reading: 223, LowerCritical threshold: 150]
1970-01-01 02:09:52.180477 sensor NOTICE: sel_management.lua(688): add sel[{"SensorName":"Adc1_1 voltage Sensor","RecordSeq":481,"SubjectName":"Adc1_1 voltage Sensor","SensorType":2,"SensorId":"ThresholdSensor_Adc1_1Sensor_0101","SelEventType":129,"SensorNumber":16,"SelMsgVersion":4,"GenerateId":32,"Timestamp":7792,"SelType":2,"RecordId":481,"SelData3":150,"SelData2":223,"SelData1":82}] successfully, record id is 481
1970-01-01 02:09:52.181087 sensor NOTICE: sensor_instance.lua(582): [ThresholdSensor_Adc1_1Sensor_0101] deassert an event [reading: 223, LowerCritical threshold: 150]
有时候添加失败
77 sensor ERROR: sdr_management.lua(547): fru sdr by obj no need to process.
1970-01-01 01:10:23.231039 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":89,"SensorType":2,"SelType":2,"SelData3":240,"SubjectName":"Adc0_3 voltage Sensor","SensorName":"Adc0_3 voltage Sensor","SensorId":"ThresholdSensor_Adc0_3Sensor_0101","SelEventType":129,"SensorNumber":6,"SelMsgVersion":4,"GenerateId":32,"SelData2":222}] failed
1970-01-01 01:10:23.499729 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":89,"SensorType":2,"SelType":2,"SelData3":240,"SubjectName":"Adc0_3 voltage Sensor","SensorName":"Adc0_3 voltage Sensor","SensorId":"ThresholdSensor_Adc0_3Sensor_0101","SelEventType":129,"SensorNumber":6,"SelMsgVersion":4,"GenerateId":32,"SelData2":222}] failed
1970-01-01 01:10:23.774344 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":82,"SensorType":2,"SelType":2,"SelData3":150,"SubjectName":"Adc0_1 voltage Sensor","SensorName":"Adc0_1 voltage Sensor","SensorId":"ThresholdSensor_Adc0_1Sensor_0101","SelEventType":129,"SensorNumber":8,"SelMsgVersion":4,"GenerateId":32,"SelData2":223}] failed
1970-01-01 01:10:23.994434 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":82,"SensorType":2,"SelType":2,"SelData3":150,"SubjectName":"Adc0_1 voltage Sensor","SensorName":"Adc0_1 voltage Sensor","SensorId":"ThresholdSensor_Adc0_1Sensor_0101","SelEventType":129,"SensorNumber":8,"SelMsgVersion":4,"GenerateId":32,"SelData2":223}] failed
1970-01-01 01:10:24.184751 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":89,"SensorType":2,"SelType":2,"SelData3":240,"SubjectName":"Adc1_0 voltage Sensor","SensorName":"Adc1_0 voltage Sensor","SensorId":"ThresholdSensor_Adc1_0Sensor_0101","SelEventType":129,"SensorNumber":9,"SelMsgVersion":4,"GenerateId":32,"SelData2":225}] failed
1970-01-01 01:10:24.500778 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":89,"SensorType":2,"SelType":2,"SelData3":240,"SubjectName":"Adc1_0 voltage Sensor","SensorName":"Adc1_0 voltage Sensor","SensorId":"ThresholdSensor_Adc1_0Sensor_0101","SelEventType":129,"SensorNumber":9,"SelMsgVersion":4,"GenerateId":32,"SelData2":225}] failed
1970-01-01 01:10:24.693101 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":89,"SensorType":2,"SelType":2,"SelData3":240,"SubjectName":"Adc1_1 voltage Sensor","SensorName":"Adc1_1 voltage Sensor","SensorId":"ThresholdSensor_Adc1_1Sensor_0101","SelEventType":129,"SensorNumber":11,"SelMsgVersion":4,"GenerateId":32,"SelData2":223}] failed
1970-01-01 01:10:24.867595 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":89,"SensorType":2,"SelType":2,"SelData3":240,"SubjectName":"Adc1_1 voltage Sensor","SensorName":"Adc1_1 voltage Sensor","SensorId":"ThresholdSensor_Adc1_1Sensor_0101","SelEventType":129,"SensorNumber":11,"SelMsgVersion":4,"GenerateId":32,"SelData2":223}] failed
1970-01-01 01:10:25.242283 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":82,"SensorType":2,"SelType":2,"SelData3":150,"SubjectName":"Adc0_2 voltage Sensor","SensorName":"Adc0_2 voltage Sensor","SensorId":"ThresholdSensor_Adc0_2Sensor_0101","SelEventType":129,"SensorNumber":12,"SelMsgVersion":4,"GenerateId":32,"SelData2":176}] failed
1970-01-01 01:10:25.372431 sensor ERROR: sel_management.lua(690): add sel[{"SelData1":82,"SensorType":2,"SelType":2,"SelData3":150,"SubjectName":"Adc0_2 voltage Sensor","SensorName":"Adc0_2 voltage Sensor","SensorId":"ThresholdSensor_Adc0_2Sensor_0101","SelEventType":129,"SensorNumber":12,"SelMsgVersion":4,"GenerateId":32,"SelData2":176}] failed