Zum Inhalt springen

problem mit mrtg, cfgmaker und messpc


MGking

Empfohlene Beiträge

Hallo Leute,

Ich hab einen Messpc am laufen und versuche die Werte mit hilfe von mrtg grafisch darzustellen.

Nachdem ich perl und mrtg installiert habe, muss ich mit cfgmaker cfgdatei erstellen. und zwar mit desem befehl:

C:\mrtg\bin>perl cfgmaker public@192.168.0.94 --global "WorkDir: c:\mrtg\mrtghtm

l" --output messpc11111.cfg

Obwohl der snmp Anfrage bei messpc funktioniert. ich hab mit eine php script angefertigt und ich krieg, siehe unten, die einzelnen Temperatur werte angezeigt.

C:\Dokumente und Einstellungen\MG>snmpwalk -v 1 -c public 192.168.0.94 .1.3.6.1.4.1.14848.2.1.2.1.6

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.1 = STRING: " 20.3 ░C"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.2 = STRING: " 25.1 ░C"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.3 = STRING: " 39.5 ░C"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.4 = STRING: " 26.1 ░C"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.5 = STRING: "**.* %RH"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.6 = STRING: "**.* %RH"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.7 = STRING: "**.* %RH"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.8 = STRING: "**.* %RH"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.9 = STRING: "output 0"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.10 = STRING: "output 0"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.11 = STRING: "output 0"

SNMPv2-SMI::enterprises.14848.2.1.2.1.6.12 = STRING: "output 1"

Ich krieg aber immer diese Fehermeldung "siehe unten", obwohl die cfg Datei erstellt worden ist. da steht snmp error: darf doch aber nicht sein, oder..?

C:\mrtg\bin>perl cfgmaker public@192.168.0.94 --global "WorkDir: c:\mrtg\mrtghtml" --output messpc11.cfg

SNMP Error:

no response received

SNMPv1_Session (remote host: "192.168.0.94" [192.168.0.94].161)

community: "public"

request ID: 1784039829

PDU bufsize: 8000 bytes

timeout: 2s

retries: 5

backoff: 1)

at C:/mrtg/bin\..\lib\mrtg2/SNMP_util.pm line 627

SNMPWALK Problem for 1.3.6.1.2.1.1 on p@192.168.0.94::::::v4only

at cfgmaker line 916

WARNING: Skipping p@192.168.0.94: as no info could be retrieved

Ich hoffe, Ihr könnt mir weiter helfen...?.Denn ich weiss nicht mehr weiter, hab schon vieles probiert.

vielen dank schon mal.

MG

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Leute,

Vom localhhost hab ich einen graph erstellt, allerdings leer.

Aber vom messpc nicht.ich hab fest gestellt , dass mrtg nicht direkt mit messpc komunizieren kann, deswegen auch diese Fehlermeldung die ich immer bekommen, das mit dem snmp error:...siehe erster kommentar.

Es gibt aber eine script auf der seite von messpc, die für verbindung von messpc und mrtg zuständig ist. die allerdings irendwie anpassen muss. Und da bin ich dann stehen geblieben..

die script sieht dann so aus.

Die Konfiguration für MRTG:

Target[PCMeasureDemo]: `/usr/bin/pcmeasure2mrtg.pl 10.254.89.8 lpt1.1 com2.1`

MaxBytes[PCMeasureDemo]: 1000

Title[PCMeasureDemo]: LiveDemo PCMeasure

PageTop[PCMeasureDemo]: <H1>LiveDemo PCMeasure</H1>

YTicsFactor[PCMeasureDemo]: 0.1

Options[PCMeasureDemo]: gauge, noinfo, nopercent, growright

YLegend[PCMeasureDemo]: Grad Celsius

Timezone[PCMeasureDemo]: GMT

ShortLegend[PCMeasureDemo]: x 0,1 Grad Celsius

LegendI[PCMeasureDemo]: Outdoor

LegendO[PCMeasureDemo]: Indoor

Legend1[PCMeasureDemo]: Outdoor in Grad Celsius

Legend2[PCMeasureDemo]: Indoor in Grad Celsius

Dazu wird folgender Perl-Script durch MRTG aufgerufen:

pcmeasure2mrtg.pl

Dieser Script kann unverändert verwendet werden, es ist keine Konfiguration erforderlich.

#!/usr/bin/perl

#############################################################

# pcmeasure2mrtg.pl Zugriff auf Daten der MessPC Software

# über das Netzwerk und Übergabe an MRTG

#

# Version 1.2 vom 11.3.2008

#

# © Lutz Schulze 2002-2008 Temperaturüberwachung - Temperatur und Luftfeuchte im Serverraum mit dem PC im Netzwerk per Software messen

#

# Aufruf: pcmeasure2mrtg.pl IP-Adresse sensor1 sensor2

#

# Die Parameter sensor1 und sensor2 bestimmen die Interfaces

# der MessPC - Software, die ausgegeben werden sollen.

# Beispiel: pcmeasure2mrtg.pl 10.1.1.1 lpt1.1 com1.1

#############################################################

use IO::Socket;

use Text::ParseWords;

sub parse_csv {

return quotewords(";",0, $_[0]);

}

$remote_host = $ARGV[0]; # IP-address

$remote_port = 4000; # TCP Port

$socket = IO::Socket::INET->new(PeerAddr =>$remote_host,

PeerPort =>$remote_port,

Proto =>"tcp",

Type =>SOCK_STREAM)

or die "cannot connect to $remote_host:$remote_port: $@\n";

print $socket "pcmeasure.$ARGV[1]\r\n";

eval {

local $SIG{ALRM} = sub { die "alarm\n"};

alarm 5;

$answer = <$socket>;

alarm 0;

};

if ($@) {

die unless $@ eq "alarm\n"; # handle unexpected errors

#no answer, timeout

print "timeout";

} else {

@fields = parse_csv($answer);

for ($i =0;$i < @fields;$i++) {

$pos1 =index $fields[$i],'value';

if ($pos1 != -1) {

$pos2 =index $fields[$i],'=';

$valuestring1 = substr($fields[$i],$pos2+1);

}

}

}

close($socket);

$valuestring2 = 0;

if ($ARGV[2] ne '') {

$socket = IO::Socket::INET->new(PeerAddr =>$remote_host,

PeerPort =>$remote_port,

Proto =>"tcp",

Type =>SOCK_STREAM)

or die "cannot connect to $remote_host:$remote_port: $@\n";

print $socket "pcmeasure.$ARGV[2]\r\n";

eval {

local $SIG{ALRM} = sub { die "alarm\n"};

alarm 5;

$answer = <$socket>;

alarm 0;

};

if ($@) {

die unless $@ eq "alarm\n"; # handle unexpected errors

#no answer, timeout

print "timeout";

}

else {

@fields = parse_csv($answer);

for ($i =0;$i < @fields;$i++) {

$pos1 =index $fields[$i],'value';

if ($pos1 != -1) {

$pos2 =index $fields[$i],'=';

$valuestring2 = substr($fields[$i],$pos2+1);

}

}

}

close($socket);

}

$valuestring1 = $valuestring1 * 10; #MRTG will nur ganze Zahlen

$valuestring2 = $valuestring2 * 10;

print "$valuestring1\n$valuestring2\n0 Std\n$ARGV[0]\n";

ich versuche jetzt so nen graph mit werten zu erstellen, villeicht hat mal jemand erfahrung damit und könnte mir weiter helfen oder so...

Danke schon mal

MG

Link zu diesem Kommentar
Auf anderen Seiten teilen

hallo Lup49,

Also erst mal die mrtg Konfig file und den perl script getrennt speichern und mit notepad bearbeiten..

das perl script unverändert so gelassen.

und die mrtg konfig file am anfang da wo TARGET..... steht meine messpc werte entsprechen angepasst d.h. ip adresse und die jeweiligen sensoren bezeichnung und so.

Das perl script zeigt nur zwei temp sensoren gleichzeitig.

Ist im groben und ganzen so.

anschliessend beide sowohl das perl script pcmeasure2mrtg.pl und mrtg.cfg beide unter c:\mrtghtml und c:\mrtg\bin gespeichert.

Und dann in dos fenster aufrufen....

geht so. dos oefnen c:\mrtg\bin\ perl mrtg mertg.cfg

und dann das in c:\mrtghtml entstandene livepcmeasure demo.html oefnen und sieh da die graphen sind da.tagliche, woechentliche, monatliche und jahrliche..

wie gegesagt es läuft alles einwandfrei...aktuellisiert sich jeder 5 minuten..

viele Gruesse

MG

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...