Amazon Best VPN GoSearch

OnWorks favicon

mrtglib - ອອນລາຍໃນຄລາວ

ແລ່ນ mrtglib ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີຜ່ານ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ນີ້ແມ່ນຄໍາສັ່ງ mrtglib ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


MRTG_lib.pm - ຫ້ອງສະໝຸດສຳລັບ MRTG ແລະສະຄຣິບສະໜັບສະໜຸນ

ສະຫຼຸບສັງລວມ


ໃຊ້ MRTG_lib;
ຂອງຂ້ອຍ ($configfile, @target_names, %globalcfg, %targetcfg);
readcfg($configfile, \@target_names, \%globalcfg, \%targetcfg);
ຂອງຂ້ອຍ (@parsed_targets);
cfgcheck(\@target_names, \%globalcfg, \%targetcfg, \@parsed_targets);

ລາຍລະອຽດ


MRTG_lib ແມ່ນສ່ວນຫນຶ່ງຂອງ MRTG, Multi Router Traffic Grapher. ມັນໄດ້ຖືກແຍກອອກຈາກ MRTG ກັບ
ອະນຸຍາດໃຫ້ໂຄງການອື່ນໆນໍາໃຊ້ໄຟລ໌ config ດຽວກັນໄດ້ຢ່າງງ່າຍດາຍ. ສ່ວນຕົ້ນຕໍຂອງ MRTG_lib ແມ່ນ
config file parser ແຕ່ບາງຟັງຊັນອື່ນໆກໍ່ມີຄືກັນ.

$MRTG_lib::OS
ປະເພດຂອງ OS: WIN, UNIX, VMS

$MRTG_lib::SL
Slash ໃນ OS ປະຈຸບັນ.

$MRTG_lib::PS
ຕົວແຍກເສັ້ນທາງໃນຕົວແປ PATH

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

ອ່ານໄຟລ໌ config, parses ແລະຕື່ມຂໍ້ມູນໃສ່ບາງ arrays ແລະ hashes. ບັງຄັບ
arguments ແມ່ນ: ຊື່ຂອງໄຟລ໌ config, ອ້າງອີງເຖິງ array ທີ່ຈະຖືກຕື່ມ
ກັບບັນຊີລາຍຊື່ຂອງຊື່ເປົ້າຫມາຍ, hashref ສໍາລັບການຕັ້ງຄ່າທົ່ວໂລກ, hashref ສໍາລັບ
ການ​ຕັ້ງ​ຄ່າ​ເປົ້າ​ຫມາຍ​.

syntax ໄຟລ໌ການຕັ້ງຄ່າແມ່ນ:

globaloption: ຄ່າ
targetoption[targetname]: ຄ່າ
ຄຳຕໍ່ທ້າຍ*extglobal: ຄ່າ
aprefix*exttarget[target2]: ຄ່າ

ຕົວຢ່າງ

workdir: /var/stat/mrtg
ເປົ້າໝາຍ[router1]: 2:[email protected]
14 ຖັນ*ທັງໝົດ: 2

hash config ທົ່ວໂລກມີໂຄງສ້າງ

$globalcfg{configoption} = 'ຄ່າ'

ເປົ້າໝາຍ config hash ມີໂຄງສ້າງ

$targetcfg{configoption}{targetname} = 'ຄ່າ'

ເບິ່ງ mrtg-reference ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ syntax ການຕັ້ງຄ່າ MRTG.

"readcfg" ສາມາດເອົາສອງການໂຕ້ຖຽງເພີ່ມເຕີມເພື່ອຂະຫຍາຍ syntax ໄຟລ໌ config. ນີ້
ອະນຸຍາດໃຫ້ບັນດາໂຄງການວາງການຕັ້ງຄ່າຂອງເຂົາເຈົ້າເຂົ້າໄປໃນໄຟລ໌ mrtg config. ທີຫ້າ
argument ແມ່ນຄໍານໍາຫນ້າຂອງການຂະຫຍາຍ, ການໂຕ້ຖຽງທີຫົກແມ່ນ hash ກັບ the
ກົດລະບຽບການກວດສອບສໍາລັບການຕັ້ງຄ່າການຂະຫຍາຍເຫຼົ່ານີ້. ຕົວຢ່າງ: ຖ້າຄໍານໍາຫນ້າແມ່ນ "14all" "readcfg" ຈະ
ກວດເບິ່ງເສັ້ນ config ທີ່ເລີ່ມຕົ້ນດ້ວຍ "14all*", ie ເສັ້ນທັງຫມົດເຊັ່ນ

14 ຖັນ*ທັງໝົດ: 2
14all*graphsize[target3]: 500 200

ຂັດກັບກົດລະບຽບໃນ %extrules. ຮູບແບບຂອງ hash ນີ້ແມ່ນ:

$extrules{option} = [ຍ່ອຍ{$_[0] =~ m/^\d+$/}, ຍ່ອຍ{"ຂໍ້ຄວາມຜິດພາດສຳລັບ $_[0]"}]
ie
$extrules{option}[0] -> ການສະແດງຜົນການທົດສອບ
$extrules{option}[1] -> ຂໍ້ຄວາມຜິດພາດຖ້າການທົດສອບລົ້ມເຫລວ

ສ່ວນທໍາອິດຂອງ array ແມ່ນການສະແດງອອກ perl ເພື່ອທົດສອບມູນຄ່າຂອງທາງເລືອກ. ໄດ້
ການທົດສອບສາມາດເຂົ້າເຖິງຄ່ານີ້ໃນຕົວແປ "$arg". ສ່ວນທີສອງຂອງ array ແມ່ນ an
ຂໍ້ຄວາມຜິດພາດທີ່ຈະສະແດງເມື່ອການທົດສອບລົ້ມເຫລວ. ຄ່າທີ່ລົ້ມເຫລວສາມາດໄດ້ຮັບການປະສົມປະສານໂດຍ
ການນໍາໃຊ້ຕົວແປ "$arg".

ການ​ຕັ້ງ​ຄ່າ​ທີ່​ມີ​ຄໍາ​ນໍາ​ຫນ້າ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​ກ​່​ວາ​ຫນຶ່ງ​ທີ່​ໄດ້​ຮັບ​ໃນ​ການ​ເອີ້ນ "readcfg​" ແມ່ນ​
ບໍ່ໄດ້ກວດເບິ່ງແຕ່ໃສ່ເຂົ້າໄປໃນ %globalcfg ແລະ %targetcfg. ການຕັ້ງຄ່າ prefixed ຮັກສາຂອງເຂົາເຈົ້າ
prefix ໃນ config hashes:

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

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

ກວດເບິ່ງການຕັ້ງຄ່າທີ່ອ່ານໂດຍ "readcfg". ກວດເບິ່ງຄ່າໃນ config ສໍາລັບ
syntactical ແລະ/ຫຼື ຄວາມຜິດພາດທາງຄວາມຫມາຍ. ກໍານົດຄ່າເລີ່ມຕົ້ນສໍາລັບບາງທາງເລືອກ. parses ໄດ້
"target[...]" ທາງເລືອກແລະຕື່ມຂໍ້ມູນໃສ່ array @parsed_targets ກຽມພ້ອມສໍາລັບຟັງຊັນ mrtg.

ສາມການໂຕ້ຖຽງທໍາອິດແມ່ນຄືກັນກັບ "readcfg". ການໂຕ້ຖຽງທີ່ສີ່ແມ່ນເປັນ
arrayref ເຊິ່ງຈະເຕັມໄປດ້ວຍ defs ເປົ້າຫມາຍທີ່ແຍກອອກ.

"cfgcheck" ແປງຄ່າຂອງການຕັ້ງຄ່າເປົ້າຫມາຍ ທາງເລືອກໃນການ, ຕົວຢ່າງ

options[router1]: bits, growright

ກັບ hash:

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

ນີ້ບໍ່ໄດ້ເຮັດໂດຍ "readcfg" ດັ່ງນັ້ນຖ້າທ່ານບໍ່ໃຊ້ "cfgcheck" ທ່ານຕ້ອງກວດເບິ່ງ.
ຕົວ​ປ່ຽນ​ແປງ​ສະ​ເກັດ​ $targetcfg{'option'}{'router1'} (MRTG ອະນຸຍາດໃຫ້ທາງເລືອກທີ່ຈະແຍກອອກ
ໂດຍຊ່ອງຫຼື ',').

"ensureSL"
"ensureSL(\$pathname)"

ກວດເບິ່ງວ່າ ຊື່ເສັ້ນທາງ ບໍ່ມີຕົວແຍກເສັ້ນທາງຄູ່ ແລະລົງທ້າຍດ້ວຍເສັ້ນທາງ
ຕົວແຍກ. ມັນໃຊ້ $MRTG_lib::SL ເປັນຕົວແຍກເສັ້ນທາງ ເຊິ່ງຈະເປັນ / ຫຼື \ ຂຶ້ນກັບ
OS.

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

ປ່ຽນໄຟລ໌ບັນທຶກເປັນຮູບແບບ rrd. ຕ້ອງການ rrdtool.

"datestr"
"datestr(ເວລາ)"

ຕອບເວລາທີ່ໃຫ້ຢູ່ໃນອາກິວເມັນເປັນສະຕຣິງວັນທີທີ່ມີຮູບແບບທີ່ສວຍງາມ. ການໂຕ້ຖຽງ
ຈະຕ້ອງຢູ່ໃນຮູບແບບເວລາ UNIX (ວິນາທີນັບຕັ້ງແຕ່ 1970-1-1).

"ເວລາ"
"timestamp()"

ຕອບສະຕຣິງທີ່ເປັນຕົວແທນຂອງເວລາປະຈຸບັນ.

"setup_loghandlers"
"setup_loghandlers(ຊື່ໄຟລ໌)"

ຕິດຕັ້ງຕົວຈັບສັນຍານສຳລັບ __DIE__ ແລະ __WARN__ ເຮັດໃຫ້ຄວາມຜິດພາດໄປຕາມທີ່ກຳນົດໄວ້.
ຈຸດໝາຍປາຍທາງ. ຖ້າຊື່ໄຟລ໌ແມ່ນ 'eventlog' mrtg ຈະເຂົ້າສູ່ລະບົບ windows event logger.

"Existr"
"expistr (ເວລາ)"

ສົ່ງຄືນເວລາທີ່ໃຫ້ຢູ່ໃນອາກິວເມັນທີ່ຈັດຮູບແບບທີ່ເໝາະສົມກັບ HTTP Expire-Headers.

"ສ້າງ_pid"
"ສ້າງ_pid()"

ສ້າງໄຟລ໌ pid ສໍາລັບ daemon mrtg

"demonize_me"
"demonize_me()"

ວາງໂປຣແກມທີ່ເຮັດວຽກຢູ່ໃນພື້ນຫຼັງ, ແຍກມັນອອກຈາກ terminal.

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

ອ່ານຕົວແປ SNMP ifDescr, ipAdEntIfIndex, ifPhysAddress, ifName ຈາກ ເຈົ້າພາບ
ແລະເກັບຮັກສາຄຸນຄ່າໃນ %confcache ດັ່ງຕໍ່ໄປນີ້:

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

ຄ່າ (ຢູ່ເບື້ອງຂວາຂອງ =) ແມ່ນ 'Dup' ຖ້າຄ່າຖືກດຶງຂໍ້ມູນຫຼາຍເທື່ອ,
ມູນຄ່າທີ່ດຶງມາອີກ.

"readconfcache"
"$confcache ຂອງຂ້ອຍ = readconfcache($file)"

ໂຫຼດ confcache ຈາກໄຟລ໌ໄວ້ລ່ວງໜ້າ.

"readfromconfcache"
"writeconfcache($confcache, $file)"

ເກັບຮັກສາ confcache ໃນປັດຈຸບັນເຂົ້າໄປໃນໄຟລ໌.

"ຂຽນ confcache"
"writeconfcache($confcache, $file)"

ເກັບຮັກສາ confcache ໃນປັດຈຸບັນເຂົ້າໄປໃນໄຟລ໌.

"storeincache"
"storeincache($confcache,$host,$method,$key,$value)"

"readfromcache"
"readfromcache($confcache, $host, $method, $key)"

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

"ດີບັກ"
"ດີບັກ($type, $message)"

ພິມ ຂໍ້ຄວາມ ໃນ STDERR ຖ້າການດີບັກຖືກເປີດໃຊ້ສໍາລັບປະເພດ ປະເພດ. ປະເພດດີບັກແມ່ນ
ເປີດໃຊ້ຖ້າ ປະເພດ ຢູ່ໃນ array @main::DEBUG.

AUTHORS


Rainer Bawidamann[email protected]>

(ໜ້ານີ້)

ໃຊ້ mrtglib ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

Linux ຄຳ ສັ່ງ

Ad




×
ການ​ໂຄ​ສະ​ນາ
?ຊື້ເຄື່ອງ, ຈອງ, ຫຼືຊື້ທີ່ນີ້ — ບໍ່ມີຄ່າໃຊ້ຈ່າຍ, ຊ່ວຍໃຫ້ການບໍລິການຟຣີ.