mirror of
https://github.com/munin-monitoring/contrib.git
synced 2025-07-22 02:51:03 +00:00
Initial version
This commit is contained in:
parent
c716b5c9cc
commit
361ac8c0f8
1 changed files with 68 additions and 0 deletions
68
plugins/other/ip_thermo_125
Executable file
68
plugins/other/ip_thermo_125
Executable file
|
@ -0,0 +1,68 @@
|
||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Copyright (C) 2008 Yuriy Sabov
|
||||||
|
# Version 0.1
|
||||||
|
#
|
||||||
|
# Plugin to fetch temperature from "IP Thermo 125" ethernet thermometer
|
||||||
|
# available at http://www.procontrol.hu/GyartasFejlesztes/Termekeink/IPThermoSimple/IPThermo125_eng.htm
|
||||||
|
# This version supports only one temperature sensor per server!
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Parameters supported:
|
||||||
|
#
|
||||||
|
# config
|
||||||
|
# autoconf
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
my ($hostname, $port, $line, $telnet);
|
||||||
|
|
||||||
|
# "C" = Celsius, "F" = Fahrenheit
|
||||||
|
my $unit = $ENV{unit} || "C";
|
||||||
|
|
||||||
|
$hostname = "10.10.10.10";
|
||||||
|
$port = 23;
|
||||||
|
|
||||||
|
use Net::Telnet ();
|
||||||
|
|
||||||
|
|
||||||
|
if ($ARGV[0] and $ARGV[0] eq "autoconf")
|
||||||
|
{
|
||||||
|
print "yes\n";
|
||||||
|
exit 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (defined $ARGV[0] and $ARGV[0] eq "config")
|
||||||
|
{
|
||||||
|
print "graph_title IP Thermo 125\n";
|
||||||
|
print "graph_args --base 1000 -l 0\n";
|
||||||
|
print "graph_category sensors\n";
|
||||||
|
print "graph_info This graph shows temperature using IP Thermo 125 server.\n";
|
||||||
|
|
||||||
|
if ($unit =~ /F/)
|
||||||
|
{
|
||||||
|
print "graph_vlabel temp in °F\n";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print "graph_vlabel temp in °C\n";
|
||||||
|
}
|
||||||
|
print "temperature.label temperature\n";
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
$telnet = new Net::Telnet (Telnetmode => 0);
|
||||||
|
|
||||||
|
# create telnet connection to temperature server
|
||||||
|
$telnet->open(Host => $hostname, Port => $port);
|
||||||
|
|
||||||
|
# read line from server.
|
||||||
|
$line = $telnet->getline;
|
||||||
|
|
||||||
|
# get measurement of first sensor from received data
|
||||||
|
$value1 = substr(substr($line, 0, 20), -4, 4);
|
||||||
|
print "temperature.value ";
|
||||||
|
print "$value1\n";
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue