bmc版本:2603
在BCU里面添加了内存温度的门限传感器,Huawei/TianChi/BCU/14100513_00000001020330323030_0.sr
内容如下:
"ThresholdSensor_Mem1Temp": {
"EntityId": "<=/Entity_DIMM000.Id",
"EntityInstance": "<=/Entity_DIMM000.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM000 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_1.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_1.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_1.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem2Temp": {
"EntityId": "<=/Entity_DIMM001.Id",
"EntityInstance": "<=/Entity_DIMM001.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM001 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_2.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_2.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_2.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem3Temp": {
"EntityId": "<=/Entity_DIMM010.Id",
"EntityInstance": "<=/Entity_DIMM010.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM010 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_3.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_3.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_3.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem4Temp": {
"EntityId": "<=/Entity_DIMM011.Id",
"EntityInstance": "<=/Entity_DIMM011.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM011 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_4.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_4.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_4.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem5Temp": {
"EntityId": "<=/Entity_DIMM020.Id",
"EntityInstance": "<=/Entity_DIMM020.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM020 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_5.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_5.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_5.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem6Temp": {
"EntityId": "<=/Entity_DIMM021.Id",
"EntityInstance": "<=/Entity_DIMM021.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM021 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_6.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_6.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_6.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem7Temp": {
"EntityId": "<=/Entity_DIMM030.Id",
"EntityInstance": "<=/Entity_DIMM030.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM030 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_7.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_7.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_7.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem8Temp": {
"EntityId": "<=/Entity_DIMM031.Id",
"EntityInstance": "<=/Entity_DIMM031.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM031 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_8.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_8.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_8.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem9Temp": {
"EntityId": "<=/Entity_DIMM100.Id",
"EntityInstance": "<=/Entity_DIMM100.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM100 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_9.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_9.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_9.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem10Temp": {
"EntityId": "<=/Entity_DIMM101.Id",
"EntityInstance": "<=/Entity_DIMM101.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM101 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_10.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_10.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_10.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem11Temp": {
"EntityId": "<=/Entity_DIMM110.Id",
"EntityInstance": "<=/Entity_DIMM110.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM110 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_11.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_11.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_11.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem12Temp": {
"EntityId": "<=/Entity_DIMM111.Id",
"EntityInstance": "<=/Entity_DIMM111.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM111 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_12.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_12.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_12.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem13Temp": {
"EntityId": "<=/Entity_DIMM120.Id",
"EntityInstance": "<=/Entity_DIMM120.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM120 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_13.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_13.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_13.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem14Temp": {
"EntityId": "<=/Entity_DIMM121.Id",
"EntityInstance": "<=/Entity_DIMM121.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM121 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_14.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_14.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_14.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem15Temp": {
"EntityId": "<=/Entity_DIMM130.Id",
"EntityInstance": "<=/Entity_DIMM130.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM130 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_15.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_15.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_15.Presence |> expr($1 == 1 ? true : false)"
},
"ThresholdSensor_Mem16Temp": {
"EntityId": "<=/Entity_DIMM131.Id",
"EntityInstance": "<=/Entity_DIMM131.Instance",
"Initialization": 127,
"Capabilities": 232,
"SensorType": 1,
"ReadingType": 1,
"SensorName": "DIMM131 Temp",
"Unit": 128,
"BaseUnit": 1,
"NominalReading": 30,
"MaximumReading": 127,
"MinimumReading": 128,
"Reading": "<=/Memory_16.TemperatureCelsius |> expr($1 > 255 ? 128 : $1)",
"ReadingStatus": "<=/::FruCtrl_1_0.PowerState ; <=/Memory_16.TemperatureCelsius |> string.cmp($1, 'ON') |> expr($1 ? 1 : 0) |> expr(($1 == 0) ? 2 : ($2 > 255 ? 2 : 0))",
"SensorNumber": 255,
"AssertMask": 128,
"DeassertMask": 28800,
"ReadingMask": 2056,
"UpperNoncritical": 95,
"PositiveHysteresis": 2,
"NegativeHysteresis": 2,
"M": 1,
"IsValid": "<=/Memory_16.Presence |> expr($1 == 1 ? true : false)"
},
重新生成固件,更新固件后,BMCweb界面可以显示内存条温度:
然后整机掉电,重新上电开机之后,web界面内存温度传感器消失了
之后再也没有出现过,这是什么情况,如何定位,新增的传感器代码在2509上面是正常的,整机断电也不会消失

