7 Discovery of IPMI sensors

Overview

It is possible to automatically discover IPMI sensors.

To do that, you may use a combination of:

  • the ipmi.get IPMI item as the master item
  • dependent low-level discovery rule and item prototypes

Configuration

Master item

Create an IPMI item using the following key:

ipmi.get

Discovery of IPMI sensors - 图1

Set the type of information to “Text” for possibly big JSON data.

Dependent LLD rule

Create a low-level discovery rule as “Dependent item” type:

Discovery of IPMI sensors - 图2

As master item select the ipmi.get item we created.

In the “LLD macros” tab define a custom macro with the corresponding JSONPath:

Discovery of IPMI sensors - 图3

Dependent item prototype

Create an item prototype with “Dependent item” type in this LLD rule. As master item for this prototype select the ipmi.get item we created.

Discovery of IPMI sensors - 图4

Note the use of the {#SENSOR_ID} macro in the item prototype name and key:

  • Name: IPMI value for sensor {#SENSOR_ID}
  • Key: ipmi_sensor[{#SENSOR_ID}]

As type of information, Numeric (unsigned).

In the item prototype “Preprocessing” tab select JSONPath and use the following JSONPath expression as parameter:

$.[?(@.id=='{#SENSOR_ID}')].value.first()

Discovery of IPMI sensors - 图5

When discovery starts, one item per each IPMI sensor will be created. This item will return the integer value of the given sensor.

What’s next?

8 Discovery of systemd services