Xymon Mailing List Archive search

Hobbit compatible temperature monitor

13 messages in this thread

list Eric Boyd · Wed, 25 Jun 2008 08:28:01 -0700 ·
I am looking to add temperature graphs to hobbit.

What should I use to monitor and graph the temperature of our server room?
None of our servers report any temperature readings in the client data.
We have some APC battery backups that have environmental monitors built 
in, but I am willing to spend a little cash on a separate device if 
there is something proven to work with Hobbit.

Thanks,

-Eric
list Dan McDonald · Wed, 25 Jun 2008 10:32:20 -0500 ·
We use ITWatchdogs Weathergoose.  I poll them with mrtg, and inject status information into hobbit using bbmrtg.pl
quoted from Eric Boyd


-----Original Message-----
From: Eric Boyd [mailto:user-abc320474c7c@xymon.invalid]
Sent: Wed 25-Jun-08 10:28
To: user-ae9b8668bcde@xymon.invalid
Subject: [hobbit] Hobbit compatible temperature monitor
 
I am looking to add temperature graphs to hobbit.

What should I use to monitor and graph the temperature of our server room?
None of our servers report any temperature readings in the client data.
We have some APC battery backups that have environmental monitors built 
in, but I am willing to spend a little cash on a separate device if 
there is something proven to work with Hobbit.

Thanks,

-Eric
list Buchan Milne · Wed, 25 Jun 2008 17:45:06 +0200 ·
quoted from Eric Boyd
On Wednesday 25 June 2008 17:28:01 Eric Boyd wrote:
I am looking to add temperature graphs to hobbit.

What should I use to monitor and graph the temperature of our server room?
None of our servers report any temperature readings in the client data.
What servers are these? Any recent HP or Dell servers, if you have their respective agents (HPASM or OMSA) installed, should allow you to monitor their temperatures via snmp, e.g. with Devmon + Hobbit you should be able to get graphs for each temperature probe.
quoted from Dan McDonald
We have some APC battery backups that have environmental monitors built
in,
Can you get the temperature data via SNMP? The existing templates for APC devices in devmon don't have any 'temp' test, but if the data is there that can be fixed.


Regards,
Buchan
list Ralph Mitchell · Wed, 25 Jun 2008 11:03:51 -0500 ·
quoted from Eric Boyd
On Wed, Jun 25, 2008 at 10:28 AM, Eric Boyd <user-abc320474c7c@xymon.invalid> wrote:
I am looking to add temperature graphs to hobbit.

What should I use to monitor and graph the temperature of our server room?
None of our servers report any temperature readings in the client data.
We have some APC battery backups that have environmental monitors built in,
but I am willing to spend a little cash on a separate device if there is
something proven to work with Hobbit.

I'm using OneWire DS18S20 sensors from Maxim-IC.com to watch room and
refrigerator temps in my wife's dairy at home.  Right now it's a bit of a
hack, with the sensors just soldered onto old phone cables, but it works
just fine.  The fridge seems to be maintaining about 25F while the room temp
gets up over 85F.

I'm using digitemp to read the sensors, which can be hooked up to either USB
or serial ports, though it's also possible to use owfs.  The readings are
fed to Hobbit via a custom script that generates NCV compatible data for
graphing.

The bare sensors are about $5, and the USB or serial port connector is
around $30.  You can use any old ethernet or phone cable.

Ralph Mitchell
list Tim McCloskey · Wed, 25 Jun 2008 09:50:05 -0700 ·
If your platform supports it you can use ipmitool for various internals.
Actual server room temp would need some external device such as the ones others have mentioned.

Example:
On a Sun X4150 box one of the sensors is Ambient Temp0. temp="`/usr/sfw/bin/ipmitool sensor reading 'Ambient Temp0' | awk '{print $NF}'`"

Other hardware has different sensor names, some just have (temp) sensors for CPU die temps.

Regards,
quoted from Buchan Milne


Buchan Milne wrote:
On Wednesday 25 June 2008 17:28:01 Eric Boyd wrote:
  
I am looking to add temperature graphs to hobbit.

What should I use to monitor and graph the temperature of our server room?
None of our servers report any temperature readings in the client data.
    
What servers are these? Any recent HP or Dell servers, if you have their respective agents (HPASM or OMSA) installed, should allow you to monitor their temperatures via snmp, e.g. with Devmon + Hobbit you should be able to get graphs for each temperature probe.

  
We have some APC battery backups that have environmental monitors built
in,
    
Can you get the temperature data via SNMP? The existing templates for APC devices in devmon don't have any 'temp' test, but if the data is there that can be fixed.


Regards,
Buchan

list Geoff Hallford · Wed, 25 Jun 2008 13:06:49 -0400 ·
I am using a Netbotz 320 device in my network and DC's. I have linked them
to Hobbit using MRTG and bbmrtg.pl for temp and humidity and alerting. Here
is an example MRTG entry for a 320 Netbotz:

######################################################################
# System: netbotz-dc1
# Description: Netbotz Environmental Monitoring
#
# Contact: (REMOVED)
# Location: DC1 - Room 322 - Main Campus
######################################################################

### Temperature >> Descr: 'Temperature' | Name: '' ###
# bb* = Big Brother info
bb*host[netbotz-dc1_1]: netbotz-dc1
bb*svc[netbotz-dc1_1]: temp
bb*yellow[netbotz-dc1_1]: 65:75
bb*red[netbotz-dc1_1]: 60:80
bb*unit[netbotz-dc1_1]: F

Target[netbotz-dc1_1]:
.1.3.6.1.4.1.5528.100.4.1.1.1.9.1095346743&.1.3.6.1.4.1.5528.100.4.1.1.1.9.1095346743:tslab at netbotz-dc1
# MaxBytes sets the scale of the graph to 100.0 Deg
MaxBytes[netbotz-dc1_1]: 100
Unscaled[netbotz-dc1_1]:  dwym
YLegend[netbotz-dc1_1]:  Temperature(Fahrenheit)
ShortLegend[netbotz-dc1_1]:  Degrees F
LegendI[netbotz-dc1_1]:  Temperature
LegendO[netbotz-dc1_1]:  Temperature
Legend1[netbotz-dc1_1]:  Temperature(Degrees Fahrenheit)
Legend2[netbotz-dc1_1]:  Temperature(Degrees Fahrenheit)
Options[netbotz-dc1_1]: gauge,nopercent

Title[netbotz-dc1_1]: Temperature for DC1 Netbotz in room 322 - Main Campus
PageTop[netbotz-dc1_1]: <h1>Temperature for DC1 Netbotz in room 322 - Main
Campus</h1>

# bb* = Big Brother info
bb*host[netbotz-dc1_2]: netbotz-dc1
bb*svc[netbotz-dc1_2]: humidity
bb*yellow[netbotz-dc1_2]: 15:75
bb*red[netbotz-dc1_2]: 10:80
bb*unit[netbotz-dc1_2]: Percent

Target[netbotz-dc1_2]:
.1.3.6.1.4.1.5528.100.4.1.2.1.8.1094232622&.1.3.6.1.4.1.5528.100.4.1.2.1.8.1094232622:tslab at netbotz-dc1
# MaxBytes sets the scale of the graph to 100.0 Deg
MaxBytes[netbotz-dc1_2]: 50
Unscaled[netbotz-dc1_2]:  dwym
YLegend[netbotz-dc1_2]:  Humidity
ShortLegend[netbotz-dc1_2]:  Degrees F
LegendI[netbotz-dc1_2]:  Humidity
LegendO[netbotz-dc1_2]:  Humidity
Legend1[netbotz-dc1_2]:  Humidity
Legend2[netbotz-dc1_2]:  Humidity
Options[netbotz-dc1_2]: gauge,nopercent

Title[netbotz-dc1_2]: Humidity for DC1 Netbotz in room 322 - Main Campus
PageTop[netbotz-dc1_2]: <h1>Humidity for DC1 Netbotz in room 322 - Main
Campus</h1>


On Wed, Jun 25, 2008 at 12:03 PM, Ralph Mitchell <user-00a5e44c48c0@xymon.invalid>
quoted from Ralph Mitchell
wrote:
On Wed, Jun 25, 2008 at 10:28 AM, Eric Boyd <user-abc320474c7c@xymon.invalid> wrote:
I am looking to add temperature graphs to hobbit.

What should I use to monitor and graph the temperature of our server room?
None of our servers report any temperature readings in the client data.
We have some APC battery backups that have environmental monitors built
in, but I am willing to spend a little cash on a separate device if there is
something proven to work with Hobbit.

I'm using OneWire DS18S20 sensors from Maxim-IC.com to watch room and
refrigerator temps in my wife's dairy at home.  Right now it's a bit of a
hack, with the sensors just soldered onto old phone cables, but it works
just fine.  The fridge seems to be maintaining about 25F while the room temp
gets up over 85F.

I'm using digitemp to read the sensors, which can be hooked up to either
USB or serial ports, though it's also possible to use owfs.  The readings
are fed to Hobbit via a custom script that generates NCV compatible data for
graphing.

The bare sensors are about $5, and the USB or serial port connector is
around $30.  You can use any old ethernet or phone cable.

Ralph Mitchell
-- 

'If my answers frighten you then you should cease asking scary questions.'
--Sam Jackson
list Bruce White · Wed, 25 Jun 2008 16:52:49 -0500 ·
We have a NetBotz appliance from APC which supports temperature probes.   I
use snmpwalk to query the MIB and produce a hobbit test which looks like:

            NetBotz Overall Status: normal(0)
          NetBotz Enclosure Status: normal(0)
                 Module Pod Status: normal(0)
                Location 1 Temp at: DC Temp. DCH2
            Location 1 Temp Status: normal(0)
           Location 1 Temperature : 76F
                Location 2 Temp at: Temp. East
            Location 2 Temp Status: normal(0)
           Location 2 Temperature : 70F
                Location 3 Temp at: Temp. West
            Location 3 Temp Status: normal(0)
           Location 3 Temperature : 77F
                   Humidity Status: normal(0)
                          Humidity: 34

I have never been able to get custom graphs working, so I am not graphing
the output. But getting custom graphs is not high on my priority list.  

   ......Bruce
quoted from Tim McCloskey


-----Original Message-----
From: Tim McCloskey [mailto:user-a56351323aaa@xymon.invalid] 
Sent: Wednesday, June 25, 2008 11:50 AM
To: user-ae9b8668bcde@xymon.invalid
Subject: Re: [hobbit] Hobbit compatible temperature monitor

If your platform supports it you can use ipmitool for various internals.
Actual server room temp would need some external device such as the ones 
others have mentioned.

Example:
On a Sun X4150 box one of the sensors is Ambient Temp0. 
temp="`/usr/sfw/bin/ipmitool sensor reading 'Ambient Temp0' | awk 
'{print $NF}'`"

Other hardware has different sensor names, some just have (temp) sensors 
for CPU die temps.

Regards,


Buchan Milne wrote:
On Wednesday 25 June 2008 17:28:01 Eric Boyd wrote:
  
I am looking to add temperature graphs to hobbit.

What should I use to monitor and graph the temperature of our server
room?
None of our servers report any temperature readings in the client data.
    
What servers are these? Any recent HP or Dell servers, if you have their 
respective agents (HPASM or OMSA) installed, should allow you to monitor 
their temperatures via snmp, e.g. with Devmon + Hobbit you should be able
to 
get graphs for each temperature probe.

  
We have some APC battery backups that have environmental monitors built
in,
    
Can you get the temperature data via SNMP? The existing templates for APC 
devices in devmon don't have any 'temp' test, but if the data is there
that 
can be fixed.


Regards,
Buchan

Note: The information contained in this message may be privileged and
confidential and protected from disclosure. If the reader of this message is
not the intended recipient, or an employee or agent responsible for
delivering this message to the intended recipient, you are hereby notified
that any dissemination, distribution or copying of this communication is
strictly prohibited. If you have received this communication in error,
please notify us immediately by replying to the message and deleting it from
your computer. Thank you. Fellowes, Inc.
list Buchan Milne · Thu, 26 Jun 2008 10:12:20 +0200 ·
quoted from Bruce White
On Wednesday 25 June 2008 23:52:49 White, Bruce wrote:
We have a NetBotz appliance from APC which supports temperature probes.   I
use snmpwalk to query the MIB and produce a hobbit test which looks like:

            NetBotz Overall Status: normal(0)
          NetBotz Enclosure Status: normal(0)
                 Module Pod Status: normal(0)
                Location 1 Temp at: DC Temp. DCH2
            Location 1 Temp Status: normal(0)
           Location 1 Temperature : 76F
                Location 2 Temp at: Temp. East
            Location 2 Temp Status: normal(0)
           Location 2 Temperature : 70F
                Location 3 Temp at: Temp. West
            Location 3 Temp Status: normal(0)
           Location 3 Temperature : 77F
                   Humidity Status: normal(0)
                          Humidity: 34

I have never been able to get custom graphs working, so I am not graphing
the output. But getting custom graphs is not high on my priority list.
Well, devmon could be a convenient method to poll the device, and would make 
getting graphs and alerts quite easy.

Regards,
Buchan
list Dan McDonald · Thu, 26 Jun 2008 07:01:40 -0500 ·
quoted from Buchan Milne
On Thu, 2008-06-26 at 10:12 +0200, Buchan Milne wrote:
On Wednesday 25 June 2008 23:52:49 White, Bruce wrote:
I have never been able to get custom graphs working, so I am not graphing
the output. But getting custom graphs is not high on my priority list.
Well, devmon could be a convenient method to poll the device, and would make 
getting graphs and alerts quite easy.
It might be, but since it doesn't support snmp v3 I have not been able
to use it.  mrtg does support snmp v3, has templates, and bbmrtg.pl is
pretty stable for importing the states into hobbit.

-- 
Daniel J McDonald, CCIE #2495, CISSP #78281, CNX
Austin Energy
http://www.austinenergy.com
list Stewart L · Thu, 26 Jun 2008 09:13:48 -0400 ·
I use some APC environmental monitors (model AP9319) and I have an external
script I'd be happy to provide to the community.

they seem to retail for about $200 now.

Stewart


On Thu, Jun 26, 2008 at 8:01 AM, McDonald, Dan <
quoted from Dan McDonald
user-290ce4e24e19@xymon.invalid> wrote:
On Thu, 2008-06-26 at 10:12 +0200, Buchan Milne wrote:
On Wednesday 25 June 2008 23:52:49 White, Bruce wrote:
I have never been able to get custom graphs working, so I am not
graphing
the output. But getting custom graphs is not high on my priority list.
Well, devmon could be a convenient method to poll the device, and would
make
getting graphs and alerts quite easy.
It might be, but since it doesn't support snmp v3 I have not been able
to use it.  mrtg does support snmp v3, has templates, and bbmrtg.pl is
pretty stable for importing the states into hobbit.

--
Daniel J McDonald, CCIE #2495, CISSP #78281, CNX
Austin Energy
http://www.austinenergy.com

-- 

Stewart
--
You only lose what you cling to.
list Eric Boyd · Thu, 26 Jun 2008 08:37:52 -0700 ·
Stewart,
I'd love to see your script.
Have you set up graphing for it?
-Eric
quoted from Stewart L

Stewart L wrote:
I use some APC environmental monitors (model AP9319) and I have an 
external script I'd be happy to provide to the community.

they seem to retail for about $200 now.

Stewart


On Thu, Jun 26, 2008 at 8:01 AM, McDonald, Dan 

<user-290ce4e24e19@xymon.invalid <mailto:user-290ce4e24e19@xymon.invalid>> 
quoted from Stewart L
wrote:

    On Thu, 2008-06-26 at 10:12 +0200, Buchan Milne wrote:
On Wednesday 25 June 2008 23:52:49 White, Bruce wrote:
I have never been able to get custom graphs working, so I am
    not graphing
the output. But getting custom graphs is not high on my
    priority list.
Well, devmon could be a convenient method to poll the device,
    and would make
getting graphs and alerts quite easy.
    It might be, but since it doesn't support snmp v3 I have not been able
    to use it.  mrtg does support snmp v3, has templates, and bbmrtg.pl is
    pretty stable for importing the states into hobbit.

    --
    Daniel J McDonald, CCIE #2495, CISSP #78281, CNX
    Austin Energy
    http://www.austinenergy.com


-- 
Stewart
--
You only lose what you cling to.
list Stewart L · Thu, 26 Jun 2008 13:10:52 -0400 ·
Yep.  We graph temperature and humidity (as that is the base sensor included
in the package).  just queried via SNMP.

Here you go!  all of our sensors are in climate controlled rooms, so
humidity is not a concern.  This reports them both on one page, but only
alerts if temp is out of range.  would be a trivial update if someone wanted
to alarm on humidity thresholds...

I have written many externals using this template.  I use the same model to
pull over 500 firewalls for 10 data points each in less than 30 seconds.

I'll leave the NCV stuff up to you. add an 'apctemp' test to your hosts and
off it goes! Have fun!

Stewart

#!/usr/bin/perl

########################################################
#
#  Hobbit script to monitor APC Environmental monitors
#
#  Written by Stewart Larsen
#
#  Released to the public domain
#
#  This uses bbhostgrep to figure out which hosts to
#  poll and then Net::SNMP to poll them Asynchronously.
#  This incorporates nicely into the NCV graphs As well.
#
########################################################

use strict;
use Net::SNMP qw(snmp_dispatcher ticks_to_time);

# Set to 1 to print to STDOUT instead of sending messages
my $debug = 1;

# this is the IP address of your hobbit server
my $BBDISP = "192.168.1.1";

# hosts need to have the 'apctemp' test defined on them. Or change this to
whatever you want to call it.
my $testname="apctemp";

# Path to your bb executable
my $BB = "/usr/lib/hobbit/server/bin/bb";

# Path to your bbhostgrep executable
my $BBHG = "/usr/lib/hobbit/server/bin/bbhostgrep";

# SNMP Community String
my $snmpc = 'public';

# Temperature thresholds
my $temp_warn = 90;
my $temp_panic = 92;

my $contact = "Emergency Contact:\n\t1) Facilities\n\t\tXXX-XXX-XXXX\n\t2)
Facilities On Call\n\t\tXXX-XXX-XXXX";

my @HOSTS = ();
my %hosts_hash = ();
my %ip_hash = ();
my $now_string = localtime;

open (INPUT, "$BBHG $testname |" ) or die "Cannot open input: $!\n";
while(<INPUT>)
{
        my ($ip,$hostname) = split(/\s/,$_);
        print "Adding $ip to polled hosts\n" if $debug;
        push @HOSTS,$hostname;
        $hosts_hash{$hostname} = $ip;
        $ip_hash{$ip} = $hostname;
}

close INPUT;

          # Poll interval (in seconds).  This value should be greater
          # than the number of retries plus one, times the timeout value.

          my $INTERVAL  = 20;

          # Maximum number of polls, including the initial poll.

          my $MAX_POLLS = 1;

          my $temperature       = '.1.3.6.1.4.1.318.1.1.10.3.13.1.1.3.1';
          my $humidity          = '.1.3.6.1.4.1.318.1.1.10.3.13.1.1.6.1';
          my $location          = '.1.3.6.1.4.1.318.1.1.10.3.12.1.0';

          # Create a session for each host and queue the first get-request.

          foreach my $host (@HOSTS) {

             my ($session, $error) = Net::SNMP->session(
                -hostname    => $hosts_hash{$host},
                -nonblocking => 0x1,   # Create non-blocking objects
                -timeout     => 5,
#               -debug       => 0xFF,
                -retries     => 1,
                -version     => '1',
                -community   => $snmpc
             );
             if (!defined($session)) {
                printf("ERROR: %s.\n", $error);
                exit 1;
             }

             # Queue the get-request, passing references to variables that
             # will be used to store the last sysUpTime and the number of
            # polls that this session has performed.

             my ($last_uptime, $num_polls) = (0, 0);

             $session->get_request(
                 -varbindlist => [$temperature,$humidity,$location],
                 -callback    => [
                    \&validate_sysUpTime_cb
                 ]
             );

          }

          # Define a reference point for all of the polls
          my $EPOC = time();

          # Enter the event loop
          snmp_dispatcher();
        $now_string = localtime;
        #print STDERR "$now_string: Processing Complete\n";

          exit 0;
sub validate_sysUpTime_cb
{
        my ($session) = @_;
        if (!defined($session->var_bind_list))
        {
                printf("%-15s  ERROR: %s\n", $session->hostname,
$session->error) if $debug;
                system("$BB $BBDISP \"status
".$ip_hash{$session->hostname}.".$testname clear $now_string - Communication
Failure\n".$session->error."\"\n") if !$debug;
        }
        else
        {

                # Validate the sysUpTime

                my $temperature = $session->var_bind_list->{$temperature};
                my $humidity    = $session->var_bind_list->{$humidity};
                my $location    = $session->var_bind_list->{$location};

                my $line = sprintf("Service on %-15s is Ok \n\ntemp :
%s\nhumidity: %s\n\n",
                                $session->hostname,
                                $temperature,
                                $humidity);


                my $cmd = "";
                my $color = "";
                my $mark = "";
                if ($temperature >= $temp_panic)
                {
                        # Panic on CPU test
                        $mark="PANIC";
                        $color="red";
                }
                elsif ($temperature >= $temp_warn)
                {
                        # Warn on CPU test
                        $mark="WARNING";
                        $color="yellow";
                }
                else
                {
                        # CPU test OK
                        $mark="OK";
                        $color="green";
                        $contact = "";
                }
                my $line="Environmental Monitoring\n\n$mark: Location:
$location\n\ntemp : $temperature\nhumidity : $humidity\n\n$contact";
                $cmd = "$BB $BBDISP \"status
".$ip_hash{$session->hostname}.".$testname $color $now_string $line\n\"";
                print STDOUT "********************\n$cmd" if $debug;
                system($cmd) if !$debug;

                $session->error_status;
quoted from Eric Boyd
        }
}


On Thu, Jun 26, 2008 at 11:37 AM, Eric Boyd <user-abc320474c7c@xymon.invalid> wrote:
Stewart,
I'd love to see your script.
Have you set up graphing for it?
-Eric

Stewart L wrote:
I use some APC environmental monitors (model AP9319) and I have an
external script I'd be happy to provide to the community.

they seem to retail for about $200 now.

Stewart


On Thu, Jun 26, 2008 at 8:01 AM, McDonald, Dan <
user-290ce4e24e19@xymon.invalid <mailto:user-290ce4e24e19@xymon.invalid>>
wrote:

   On Thu, 2008-06-26 at 10:12 +0200, Buchan Milne wrote:
On Wednesday 25 June 2008 23:52:49 White, Bruce wrote:
I have never been able to get custom graphs working, so I am
   not graphing
the output. But getting custom graphs is not high on my
   priority list.
Well, devmon could be a convenient method to poll the device,
   and would make
getting graphs and alerts quite easy.
   It might be, but since it doesn't support snmp v3 I have not been able
   to use it.  mrtg does support snmp v3, has templates, and bbmrtg.pl is
   pretty stable for importing the states into hobbit.

   --
   Daniel J McDonald, CCIE #2495, CISSP #78281, CNX
   Austin Energy
   http://www.austinenergy.com


--
Stewart
--
You only lose what you cling to.
-- 
Stewart
--
You only lose what you cling to.
list Andreas Kunberger · Fri, 27 Jun 2008 10:08:33 +0200 ·
Am Mittwoch, 25. Juni 2008 17:28 schrieb Eric Boyd:
I am looking to add temperature graphs to hobbit.
Have a look at 
  http://www.messpc.de/

But it seems, that there is only a german version :(

mfg
Andreas Kunberger

-- 
Denkendorf