[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Freeipmi-users] sensor not found with lib ipmimonitoring

From: yiannis georgiou
Subject: Re: [Freeipmi-users] sensor not found with lib ipmimonitoring
Date: Thu, 16 May 2013 18:18:50 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:14.0) Gecko/20120714 Thunderbird/14.0

Hi Al,

good guess!! that was the problem and by putting the REREAD_SDR_CACHE flag to true everything went back to normal

my question now is if I let the flag REREAD_SDR_CACHE to true permanently
is the program going to flush / read the cache every time or only the first time when we make multiple calls per minute?

actually the program I'm talking about is running as a thread collecting power consumption information from a sensor every once in a while so if it's going to delay every time reading the cache then I need to put the value to false after the first read.

thanks a lot for your help

Best Regards

On 05/15/2013 07:28 PM, Albert Chu wrote:
Hi Yiannis,

That is indeed strange.  It's hard to tell from just the information you
provided, but I have a guess

Both ipmi-sensors and libipmimonitoring cache the SDR (sensor data
repository) "database" the first time it reads from the system so that
it doesn't have to do it over and over again.  It's possible that cache
is out of date, wrong, or corrupted for libipmimonitoring (i.e. firmware
update at some point, caches were created at different times, etc.).

You may wish to flush the cache (-f in ipmi-sensors, see
REREAD_SDR_CACHE flag in ipmi_monitoring.h).  You could also just delete
the cache manually.  The default location of the libipmimonitoring cache
depends on your build, but you can see the location in the
libipmimonitoring.3 manpage.

If that doesn't work, could you send me the debug output when you run
your libipmimonitoring tool.  You can turn on debugging by setting these

     IPMI_MONITORING_FLAGS_DEBUG              = 0x01,


On Wed, 2013-05-15 at 16:41 +0200, yiannis georgiou wrote:

I have observed a strange behaviour when using ipmimonitoring library
from a C program to collect the value of particular sensor
The problem was observed on a cluster of homogeneous nodes and with
freeipmi version 1.2.1.
Even if ipmi-sensors command returns correctly the record id  the
function "ipmi_monitoring_sensor_readings_by_record_id"
returns "sensor not found"

The strange thing is that the function works correctly on most of the
nodes and the problem arrives only on some nodes:
Here are some output from our cluster. In the results the executable
./test_lib_ipmi  makes use of the function

so this is a node where the function works fine
address@hidden ~]# ipmi-sensors -r 81
ID | Name         | Type         | Reading    | Units | Event
81 | Blade Consum | Power Supply | 78.00      | W     | 'OK'

address@hidden ~]# ./test_lib_ipmi 1 81
The sensor value is in watt: 76

and this is a node where it doesn't:

address@hidden ~]# ipmi-sensors -r 81
ID | Name         | Type         | Reading    | Units | Event
81 | Blade Consum | Power Supply | 72.00      | W     | 'OK'

address@hidden ~]# ./test_lib_ipmi 1 81
error: ipmi_monitoring_sensor_readings_by_record_id: sensor not found

Do you have any ideas why we get this behaviour? Could this be a
freeipmi configuration problem (related with the defaults of
ipmimonitoring library) or a hardware issue ?
Let me know if you want more information to localize the problem

Thanks a lot for your help
Best Regards

Freeipmi-users mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]