Enhanced sensor monitor

George Liu liuxiwei1013 at gmail.com
Tue Sep 27 19:44:03 AEST 2022


Hi, all:
  I am working at Inspur and we're investigating a feature related to
sensor monitoring.

  As far as I know, the OpenBMC community will only trigger LED alarms
when the parsing FRU/VPD fails or is not in place. The lack of the
function of triggering the corresponding Sensor fault light for the
fault status (Warning/Critical) of the sensors, including
threshold-type sensors and discrete-type sensors.

  For threshold-type sensors, this function has been implemented in
the Intel warehouse [1], I think this should be a general function,
and even many companies have implemented it downstream, so can we push
this function upstream?
  For discrete-type sensors, it is only implemented in the
sensor.yaml[2] of the phosphor-ipmi-hostd, and we found that the
present state is simply implemented. I think it is necessary for us to
improve the discrete function and support all types and offsets.

  In addition: For the SEL function, the phosphor-sel-logger has
implemented threshold-type sensor alarms and records SEL, and I hope
to also integrate discrete-type functions, and be able to get all
sensor information through `ipmitool sel elist`.

  So we currently have an idea, we hope to create a
phosphor-sensor-monitor repository and implement the following
functions:
  1. Provide a PDI interface (eg:
xyz.openbmc_project.Discrete.Sensor.Value) to record discrete states
  2. Provide a way to monitor threshold sensor status -> trigger LED
-> log SEL (the function of logging SEL has been implemented in
phosphor-sel-logger, I hope the two repositories can be merged in the
future)
  3. Provide a way to monitor discrete sensor status
      a. If it is the data on the Host side, trigger the PDI interface
through the ipmiStorageAddSEL method of phosphor-host-ipmid -> trigger
LED -> record SEL
      b. If it is the data on the BMC side (eg: PSU, OCC, etc.), it
should inherit this PDI interface in the respective daemon, and the
phosphor-sensor-monitor only needs to monitor the property value of
the PDI interface -> trigger LED -> record SEL
  4. Flexible JSON configuration file, ideally, when adding or
deleting sensors, you do not need to change the code, just update the
JSON

  There may be many situations here that we have not considered.
Welcome to ask questions. If the current proposal is accepted, I will
push a design document, thanks!

[1]: https://github.com/Intel-BMC/provingground/tree/master/callback-manager
[2]: https://github.com/openbmc/phosphor-host-ipmid/blob/master/scripts/sensor-example.yaml

BRs
George Liu


More information about the openbmc mailing list