6 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 (supported since Zabbix 5.0.0) 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
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:
As master item select the ipmi.get
item we created.
In the “LLD macros” tab define a custom macro with the corresponding JSONPath:
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.
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()
When discovery starts, one item per each IPMI sensor will be created. This item will return the integer value of the given sensor.