mrtglib - Online in de cloud

Dit is de opdracht mrtglib die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


MRTG_lib.pm - Bibliotheek voor MRTG en ondersteuningsscripts

KORTE INHOUD


gebruik MRTG_lib;
mijn ($configfile, @target_names, %globalcfg, %targetcfg);
readcfg($configfile, \@target_names, \%globalcfg, \%targetcfg);
mijn (@parsed_targets);
cfgcheck(\@doel_namen, \%globalcfg, \%targetcfg, \@parsed_targets);

PRODUCTBESCHRIJVING


MRTG_lib is onderdeel van MRTG, de Multi Router Traffic Grapher. Het werd gescheiden van MRTG naar
toestaan ​​dat andere programma's gemakkelijk dezelfde configuratiebestanden gebruiken. Het belangrijkste onderdeel van MRTG_lib is het
config-bestandsparser, maar er zijn ook enkele andere functies.

$MRTG_lib::OS
Type besturingssysteem: WIN, UNIX, VMS

$MRTG_lib::SL
Slash in het huidige besturingssysteem.

$MRTG_lib::PS
Padscheidingsteken in PATH-variabele

"leescfg"
"readcfg($file, \@targets, \%globalcfg, \%targetcfg [, $prefix, \%extrules])"

Leest een configuratiebestand, ontleedt het en vult enkele arrays en hashes. De verplichte
argumenten zijn: de naam van het configuratiebestand, een verwijzing naar een array die zal worden gevuld
met een lijst met doelnamen, een hashref voor de globale configuratie, een hashref voor
de doelconfiguratie.

De syntaxis van het configuratiebestand is:

globale optie: waarde
doeloptie[doelnaam]: waarde
aprefix*extglobal: waarde
aprefix*exttarget[doel2]: waarde

bv

werkmap: /var/stat/mrtg
doel[router1]: 2:publiek@router1.local.net
14alle*kolommen: 2

De globale configuratie-hash heeft de structuur

$globalcfg{configuratieoptie} = 'waarde'

De doelconfiguratie-hash heeft de structuur

$targetcfg{configoption}{doelnaam} = 'waarde'

Zie mrtg-referentie voor meer informatie over de MRTG-configuratiesyntaxis.

"readcfg" kan twee extra argumenten gebruiken om de syntaxis van het configuratiebestand uit te breiden. Dit
staat programma's toe hun configuratie in het mrtg-configuratiebestand te plaatsen. De vijfde
argument is het voorvoegsel van de extensie, het zesde argument is een hash met de
controleregels voor deze extensie-instellingen. Als het voorvoegsel bijvoorbeeld "14all" is, zal "readcfg" dat doen
controleer configuratieregels die beginnen met "14all*", dwz alle regels zoals

14alle*kolommen: 2
14alle*grafiekgrootte[doel3]: 500 200

tegen de regels in %extrules. Het formaat van deze hash is:

$extrules{option} = [sub{$_[0] =~ m/^\d+$/}, sub{"Foutmelding voor $_[0]"}]
dat wil zeggen
$extrules{option}[0] -> een testexpressie
$extrules{option}[1] -> foutmelding als de test mislukt

Het eerste deel van de array is een perl-expressie om de waarde van de optie te testen. De
test heeft toegang tot deze waarde in de variabele "$arg". Het tweede deel van de array is een
foutmelding die wordt weergegeven als de test mislukt. De mislukte waarde kan worden geïntegreerd door
met behulp van de variabele "$arg".

Configuratie-instellingen met een ander voorvoegsel dan degene die is opgegeven in de "readcfg"-aanroep zijn
niet gecontroleerd maar ingevoegd %globalcfg en %doelcfg. Vooraf ingestelde instellingen behouden hun
voorvoegsel in de configuratie-hashes:

$targetcfg{'14all*graphsize'}{'target3'} = '500 200'

"cfgcheck"
"cfgcheck(\@doel_namen, \%globalcfg, \%targetcfg, \@parsed_targets)"

Controleert de configuratie gelezen door "readcfg". Controleert de waarden in de configuratie voor
syntactische en/of semantische fouten. Stelt standaardinstellingen in voor sommige opties. Parseert de
"target[...]" opties en vult de array @parsed_targets klaar voor mrtg-functies.

De eerste drie argumenten zijn dezelfde als voor "readcfg". Het vierde argument is een
arrayref die zal worden gevuld met de geparseerde doeldefs.

"cfgcheck" converteert de waarden van doelinstellingen opties, bijv

opties[router1]: bits, groeirecht

naar een hasj:

$targetcfg{'optie'}{'bits'}{'router1'} = 1
$targetcfg{'optie'}{'growright'}{'router1'} = 1

Dit wordt niet gedaan door "readcfg", dus als u "cfgcheck" niet gebruikt, moet u de
scalaire variabele $targetcfg{'optie'}{'router1'} (MRTG maakt het mogelijk om opties te scheiden
met een spatie of ',').

"zorgSL"
"ensureSL(\$padnaam)"

Controleert of de padnaam bevat geen dubbele padscheidingstekens en eindigt met een pad
scheidingsteken. Het gebruikt $MRTG_lib::SL als padscheidingsteken, afhankelijk van / of \
het besturingssysteem.

"log2rrd"
"log2rrd ($router,\%globalcfg,\%targetcfg)"

Converteer logbestand naar rrd-formaat. Heeft rrdtool nodig.

"datestr"
"datumstr(tijd)"

Retourneert de tijd die in het argument is opgegeven als een mooi opgemaakte datumtekenreeks. Het argument
moet in UNIX-tijdformaat zijn (seconden sinds 1970-1).

"tijdstempel"
"tijdstempel()"

Retourneert een tekenreeks die de huidige tijd vertegenwoordigt.

"setup_loghandlers"
"setup_loghandlers(bestandsnaam)"

Installeer signaalhandlers voor __DIE__ en __WARN__, zodat de fouten overeenkomen met de opgegeven waarden
bestemming. Als de bestandsnaam 'eventlog' is, logt mrtg in op de Windows-gebeurtenislogger.

"expistr"
"expistr(tijd)"

Retourneert de tijd die is opgegeven in het argument, opgemaakt geschikt voor HTTP Expire-Headers.

"create_pid"
"create_pid()"

Creëert een pid-bestand voor de mrtg-daemon

"demoniseer_mij"
"demoniseer_mij()"

Zet het actieve programma op de achtergrond en koppelt het los van de terminal.

"populatiecache"
"populatecache(\%confcache, $host, $reread, $snmpoptshash)"

Leest de SNMP-variabelen ifDescr, ipAdEntIfIndex, ifPhysAddress, alsNaam aan de hand van de gastheer
en slaat de waarden op %confcache als volgt:

$confcache{$host}{'Descr'}{ifDescr}{oid} = (ifDescr of 'Dup')
$confcache{$host}{'IP'}{ipAdEntIfIndex}{oid} = (ipAdEntIfIndex of 'Dup')
$confcache{$host}{'Eth'}{ifPhysAddress}{oid} = (ifPhysAddress of 'Dup')
$confcache{$host}{'Name'}{ifName}{oid} = (ifName of 'Dup')
$confcache{$host}{'Type'}{ifType}{oid} = (ifType of 'Dup')

De waarde (aan de rechterkant van =) is 'Dup' als een waarde meerdere keren is opgehaald,
de opgehaalde waarde anders.

"readconfcache"
"mijn $confcache = readconfcache($file)"

Laad de confcache vooraf vanuit een bestand.

"lezen uit confcache"
"writeconfcache($confcache,$bestand)"

Sla de huidige confcache op in een bestand.

"writeconfcache"
"writeconfcache($confcache,$bestand)"

Sla de huidige confcache op in een bestand.

"opslaan in cache"
"storeincache($confcache,$host,$methode,$sleutel,$waarde)"

"leesuitcache"
"readfromcache($confcache,$host,$methode,$key)"

"clearfromcache"
"clearfromcache($confcache,$host)"

"debuggen"
"debug($type, $bericht)"

Drukt de bericht op STDERR als foutopsporing is ingeschakeld voor type type dan: . Een foutopsporingstype is
ingeschakeld als type dan: bevindt zich in array @main::DEBUG.

AUTEURS


Rainer BawidamannRainer.Bawidamann@rz.uni-ulm.de>

(Deze manpagina)

Gebruik mrtglib online met behulp van onworks.net-services



Nieuwste Linux & Windows online programma's