mrtglib - Online di Cloud

Ini adalah perintah mrtglib yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


MRTG_lib.pm - Perpustakaan untuk MRTG dan skrip dukungan

RINGKASAN


gunakan MRTG_lib;
saya ($configfile, @target_names, %globalcfg, %targetcfg);
readcfg($configfile, \@target_names, \%globalcfg, \%targetcfg);
saya (@parsed_targets);
cfgcheck(\@target_names, \%globalcfg, \%targetcfg, \@parsed_targets);

DESKRIPSI


MRTG_lib adalah bagian dari MRTG, Multi Router Traffic Grapher. Itu dipisahkan dari MRTG ke
memungkinkan program lain untuk dengan mudah menggunakan file konfigurasi yang sama. Bagian utama dari MRTG_lib adalah
config parser file tetapi beberapa fungsi lain juga ada.

$MRTG_lib::OS
Jenis OS: WIN, UNIX, VMS

$MRTG_lib::SL
Memotong di OS saat ini.

$MRTG_lib::PS
Pemisah jalur dalam variabel PATH

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

Membaca file konfigurasi, mem-parsingnya dan mengisi beberapa array dan hash. Wajib
argumennya adalah: nama file konfigurasi, referensi ke array yang akan diisi
dengan daftar nama target, hashref untuk konfigurasi global, hashref untuk
konfigurasi sasaran.

Sintaks file konfigurasi adalah:

opsi global: nilai
targetoption[nama target]: nilai
aprefix*extglobal: nilai
aprefix*exttarget[target2]: nilai

Misalnya

direktori kerja: /var/stat/mrtg
target[router1]: 2:publik@router1.local.net
14semua*kolom: 2

Hash konfigurasi global memiliki struktur

$globalcfg{configoption} = 'nilai'

Hash konfigurasi target memiliki struktur

$targetcfg{configoption}{targetname} = 'nilai'

Lihat mrtg-reference untuk informasi lebih lanjut tentang sintaks konfigurasi MRTG.

"readcfg" dapat mengambil dua argumen tambahan untuk memperluas sintaks file konfigurasi. Ini
memungkinkan program untuk memasukkan konfigurasinya ke dalam file konfigurasi mrtg. Kelima
argumen adalah awalan dari ekstensi, argumen keenam adalah hash dengan
checkrules untuk pengaturan ekstensi ini. Misalnya jika awalannya adalah "14all" "readcfg" akan
periksa baris konfigurasi yang dimulai dengan "14all*", yaitu semua baris seperti

14semua*kolom: 2
14semua*ukuran grafik[target3]: 500 200

bertentangan dengan aturan di %extrules. Format hash ini adalah:

$extrules{option} = [sub{$_[0] =~ m/^\d+$/}, sub{"Pesan kesalahan untuk $_[0]"}]
yaitu
$extrules{option}[0] -> ekspresi uji
$extrules{option}[1] -> pesan kesalahan jika tes gagal

Bagian pertama dari array adalah ekspresi perl untuk menguji nilai opsi. NS
test dapat mengakses nilai ini dalam variabel "$arg". Bagian kedua dari array adalah
pesan kesalahan untuk ditampilkan saat tes gagal. Nilai yang gagal dapat diintegrasikan dengan
menggunakan variabel "$arg".

Pengaturan konfigurasi dengan awalan yang berbeda dari yang diberikan dalam panggilan "readcfg" adalah
tidak dicentang tetapi dimasukkan ke dalam %globalcfg dan %targetcfg. Pengaturan awalan tetap
awalan dalam hash konfigurasi:

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

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

Memeriksa konfigurasi yang dibaca oleh "readcfg". Memeriksa nilai dalam konfigurasi untuk
kesalahan sintaksis dan/atau semantik. Menetapkan default untuk beberapa opsi. Menguraikan
opsi "target[...]" dan mengisi array @parsed_targets yang siap untuk fungsi mrtg.

Tiga argumen pertama sama dengan "readcfg". Argumen keempat adalah
arrayref yang akan diisi dengan target defs yang diurai.

"cfgcheck" mengonversi nilai pengaturan target Pilihan, misalnya

pilihan[router1]: bit, growright

ke hash:

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

Ini tidak dilakukan oleh "readcfg" jadi jika Anda tidak menggunakan "cfgcheck" Anda harus memeriksa
variabel skalar $targetcfg{'option'}{'router1'} (MRTG memungkinkan opsi untuk dipisahkan
dengan spasi atau ',').

"pastikan SL"
"pastikanSL(\$nama jalur)"

Memeriksa bahwa nama jalur tidak mengandung pemisah jalur ganda dan diakhiri dengan jalur
pemisah. Ia menggunakan $MRTG_lib::SL sebagai pemisah jalur yang akan menjadi / atau \ tergantung pada
OS.

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

Konversi file log ke format rrd. Membutuhkan rrdtool.

"datestr"
"datestr(waktu)"

Mengembalikan waktu yang diberikan dalam argumen sebagai string tanggal yang diformat dengan baik. Argumen
harus dalam format waktu UNIX (detik sejak 1970-1-1).

"cap waktu"
"stempel waktu ()"

Kembalikan string yang mewakili waktu saat ini.

"setup_loghandlers"
"setup_loghandlers(nama file)"

Instal penangan sinyal untuk __DIE__ dan __WARN__ membuat kesalahan sesuai dengan yang ditentukan
tujuan. Jika nama file adalah 'eventlog' mrtg akan masuk ke windows event logger.

"existr"
"existr(waktu)"

Mengembalikan waktu yang diberikan dalam argumen yang diformat sesuai untuk HTTP Expire-Headers.

"buat_pid"
"buat_pid()"

Membuat file pid untuk daemon mrtg

"mengibaskan_saya"
"mengiblis_saya()"

Menempatkan program yang sedang berjalan ke latar belakang, melepaskannya dari terminal.

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

Membaca variabel SNMP ifDescr, ipAdEntIfIndex, ifPhysAddress, jikaNama dari tuan rumah
dan menyimpan nilai dalam %confcache sebagai berikut:

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

Nilai (di sisi kanan =) adalah 'Dup' jika nilai diambil beberapa kali,
nilai yang diambil lagi.

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

Pramuat confcache dari file.

"baca dariconfcache"
"writeconfcache($confcache,$file)"

Simpan confcache saat ini ke dalam file.

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

Simpan confcache saat ini ke dalam file.

"storeincache"
"storeincache($confcache,$host,$metode,$kunci,$nilai)"

"baca dari cache"
"readfromcache($confcache,$host,$method,$key)"

"hapus dari cache"
"clearfromcache($confcache,$host)"

"men-debug"
"debug($jenis, $pesan)"

Mencetak pesan di STDERR jika debugging diaktifkan untuk tipe mengetik. Jenis debug adalah
diaktifkan jika mengetik ada di array @main::DEBUG.

PENULIS


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

(Halaman Manual ini)

Gunakan mrtglib online menggunakan layanan onworks.net



Program online Linux & Windows terbaru