Dies ist der Befehl mrtglib, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
MRTG_lib.pm – Bibliothek für MRTG und Support-Skripte
ZUSAMMENFASSUNG
benutze MRTG_lib;
my ($configfile, @target_names, %globalcfg, %targetcfg);
readcfg($configfile, \@target_names, \%globalcfg, \%targetcfg);
mein (@parsed_targets);
cfgcheck(\@target_names, \%globalcfg, \%targetcfg, \@parsed_targets);
BESCHREIBUNG
MRTG_lib ist Teil von MRTG, dem Multi Router Traffic Grapher. Es wurde von MRTG getrennt
Ermöglichen Sie anderen Programmen die einfache Verwendung derselben Konfigurationsdateien. Der Hauptteil von MRTG_lib ist die
Konfigurationsdatei-Parser, aber es gibt auch einige andere Funktionen.
$MRTG_lib::OS
Betriebssystemtyp: WIN, UNIX, VMS
$MRTG_lib::SL
Slash im aktuellen Betriebssystem.
$MRTG_lib::PS
Pfadtrennzeichen in der PATH-Variablen
„readcfg“
„readcfg($file, \@targets, \%globalcfg, \%targetcfg [, $prefix, \%extrules])“
Liest eine Konfigurationsdatei, analysiert sie und füllt einige Arrays und Hashes. Das Obligatorische
Argumente sind: der Name der Konfigurationsdatei, ein Verweis auf ein Array, das gefüllt wird
mit einer Liste der Zielnamen, einem Hashref für die globale Konfiguration, einem Hashref für
die Zielkonfiguration.
Die Syntax der Konfigurationsdatei lautet:
globale Option: Wert
Zieloption[Zielname]: Wert
aprefix*extglobal: Wert
aprefix*exttarget[target2]: Wert
zB
Arbeitsverzeichnis: /var/stat/mrtg
Ziel[Router1]: 2:[E-Mail geschützt]
14alle*Spalten: 2
Der globale Konfigurations-Hash hat die Struktur
$globalcfg{configoption} = 'Wert'
Der Zielkonfigurations-Hash hat die Struktur
$targetcfg{configoption}{targetname} = 'Wert'
Weitere Informationen zur MRTG-Konfigurationssyntax finden Sie unter mrtg-reference.
„readcfg“ kann zwei zusätzliche Argumente annehmen, um die Syntax der Konfigurationsdatei zu erweitern. Das
Ermöglicht Programmen, ihre Konfiguration in die mrtg-Konfigurationsdatei einzufügen. Der fünfte
Argument ist das Präfix der Erweiterung, das sechste Argument ist ein Hash mit dem
Prüfregeln für diese Erweiterungseinstellungen. Wenn das Präfix beispielsweise „14all“ lautet, wird „readcfg“ verwendet
Überprüfen Sie die Konfigurationszeilen, die mit „14all*“ beginnen, also alle Zeilen wie
14alle*Spalten: 2
14all*graphsize[target3]: 500 200
gegen die Regeln in %extrules. Das Format dieses Hashs ist:
$extrules{option} = [sub{$_[0] =~ m/^\d+$/}, sub{"Fehlermeldung für $_[0]"}]
dh
$extrules{option}[0] -> ein Testausdruck
$extrules{option}[1] -> Fehlermeldung, wenn der Test fehlschlägt
Der erste Teil des Arrays ist ein Perl-Ausdruck zum Testen des Werts der Option. Der
test kann auf diesen Wert in der Variablen „$arg“ zugreifen. Der zweite Teil des Arrays ist ein
Fehlermeldung, die angezeigt wird, wenn der Test fehlschlägt. Der fehlgeschlagene Wert kann durch integriert werden
mit der Variablen „$arg“.
Es handelt sich um Konfigurationseinstellungen mit einem anderen Präfix als dem im „readcfg“-Aufruf angegebenen
nicht geprüft, sondern eingefügt %globalcfg und %targetcfg. Voreingestellte Einstellungen behalten ihre Gültigkeit
Präfix in den Konfigurations-Hashes:
$targetcfg{'14all*graphsize'}{'target3'} = '500 200'
„cfgcheck“
„cfgcheck(\@target_names, \%globalcfg, \%targetcfg, \@parsed_targets)“
Überprüft die von „readcfg“ gelesene Konfiguration. Überprüft die Werte in der Konfiguration auf
syntaktische und/oder semantische Fehler. Legt Standardwerte für einige Optionen fest. Analysiert die
„target[...]“-Optionen und füllt das Array @parsed_targets bereit für mrtg-Funktionen.
Die ersten drei Argumente sind die gleichen wie bei „readcfg“. Das vierte Argument ist ein
arrayref, das mit den geparsten Zieldefinitionen gefüllt wird.
„cfgcheck“ konvertiert die Werte der Zieleinstellungen Optionen, z.B
Optionen[router1]: Bits, Growright
zu einem Hash:
$targetcfg{'option'}{'bits'}{'router1'} = 1
$targetcfg{'option'}{'growright'}{'router1'} = 1
Dies wird nicht von „readcfg“ durchgeführt. Wenn Sie also nicht „cfgcheck“ verwenden, müssen Sie dies überprüfen
Skalarvariable $targetcfg{'option'}{'router1'} (MRTG ermöglicht die Trennung von Optionen
durch Leerzeichen oder ',').
„ensureSL“
„ensureSL(\$pathname)“
Überprüft, ob die Pfadname enthält keine doppelten Pfadtrennzeichen und endet mit einem Pfad
Separator. Es verwendet $MRTG_lib::SL als Pfadtrennzeichen, das je nach / oder \ lautet
das Betriebssystem.
„log2rrd“
„log2rrd ($router,\%globalcfg,\%targetcfg)“
Konvertieren Sie die Protokolldatei in das RRD-Format. Benötigt rrdtool.
„datestr“
„datestr(time)“
Gibt die im Argument angegebene Zeit als schön formatierte Datumszeichenfolge zurück. Das Argument
muss im UNIX-Zeitformat vorliegen (Sekunden seit 1970-1-1).
„Zeitstempel“
„timestamp()“
Gibt eine Zeichenfolge zurück, die die aktuelle Uhrzeit darstellt.
„setup_loghandlers“
„setup_loghandlers(filename)“
Installieren Sie Signalhandler für __DIE__ und __WARN__, damit die Fehler wie angegeben angezeigt werden
Ziel. Wenn der Dateiname „eventlog“ lautet, protokolliert mrtg im Windows-Ereignislogger.
„expistr“
„expistr(time)“
Gibt die im Argument angegebene Zeit zurück, die für HTTP-Expire-Header geeignet formatiert ist.
„create_pid“
„create_pid()“
Erstellt eine PID-Datei für den mrtg-Daemon
„dämonize_me“
„dämonize_me()“
Versetzt das laufende Programm in den Hintergrund und trennt es vom Terminal.
„populatecache“
„populatecache(\%confcache, $host, $reread, $snmpoptshash)“
Liest die SNMP-Variablen ifDescr, ipAdEntIfIndex, ifPhysAddress, ifName von dem Gastgeber
und speichert die Werte in %confcache wie folgt:
$confcache{$host}{'Descr'}{ifDescr}{oid} = (ifDescr or 'Dup')
$confcache{$host}{'IP'}{ipAdEntIfIndex}{oid} = (ipAdEntIfIndex or 'Dup')
$confcache{$host}{'Eth'}{ifPhysAddress}{oid} = (ifPhysAddress or 'Dup')
$confcache{$host}{'Name'}{ifName}{oid} = (ifName oder 'Dup')
$confcache{$host}{'Type'}{ifType}{oid} = (ifType or 'Dup')
Der Wert (auf der rechten Seite von =) ist „Dup“, wenn ein Wert mehrmals abgerufen wurde.
der abgerufene Wert else.
„readconfcache“
„mein $confcache = readconfcache($file)“
Laden Sie den Confcache aus einer Datei vor.
„readfromconfcache“
„writeconfcache($confcache,$file)“
Speichern Sie den aktuellen Confcache in einer Datei.
„writeconfcache“
„writeconfcache($confcache,$file)“
Speichern Sie den aktuellen Confcache in einer Datei.
„storeincache“
„storeincache($confcache,$host,$method,$key,$value)“
„readfromcache“
„readfromcache($confcache,$host,$method,$key)“
„clearfromcache“
„clearfromcache($confcache,$host)“
"debuggen"
„debug($type, $message)“
Druckt die Nachricht auf STDERR, wenn das Debuggen für den Typ aktiviert ist tippe. Ein Debug-Typ ist
aktiviert, wenn tippe ist im Array @main::DEBUG.
AUTOREN
Rainer Bawidamann[E-Mail geschützt] >
(Diese Manpage)
Verwenden Sie mrtglib online über die Dienste von onworks.net