Muudatused
Allikas: Pingviini viki
/* MRTG ja omaloodud scriptid */
Sellega peakski olema loodud ka esimene graafik (millel klikates avaneb pikem ülevaade kuulatavast objektist), mis joonistub vastavalt konfiguratsioonile paremalt ja mille edasiseks arenguks peate veel jätkuvalt jooksutama käsklust mrtg. Siiski on ületatud kõige keerulisem peatükk, kui siiani on kõik õnnestund, siis edasine on üldiselt lihtne.
==MRTG kasutamine crontab-i abilja omaloodud scriptid==
eeprom-i2c-2-50
Adapter: SMBus Via Pro adapter at 0500
Memory type: SDR SDRAM DIMM
Memory size (MB): 256
eeprom-i2c-1-50
Adapter: NVIDIA display adapter bus 0
Either use the ddcmon driver instead of the eeprom driver,
or run the decode-edid.pl script.</pre>
Info, mida mina tahan hetkel kasutada on järgmine:
CPU Temp: +39°C (low = +15°C, high = +45°C) sensor = thermistor
Temp3: +41°C (low = +15°C, high = +45°C) sensor = thermistor
Esimene neist on protsessori temperatuur ning teine toiteploki oma.
Et neid kasutada on vaja kirjutada script, mida MRTG saaks kasutada. Et skripte võib ajapikku juurde tekkida ja alati võib tulla vajadus neid ümber teha, siis teen selleks eraldi kausta, et kergem hiljem leida oleks.
[root@localhost sander]# mkdir /var/www/html/mrtg/scriptid
Järgmisena loome sellesse kausta faili '''temperatuurid.sh''', mille sisu on järgmine:
<pre>#!/bin/sh
cpu=`sensors |grep CPU | awk '{print $3}' | sed -e 's/+//' -e 's/°C//'`
echo $cpu
psu=`sensors |grep Temp3 | awk '{print $2}' | sed -e 's/+//' -e 's/°C//'`
echo $psu
echo "a long time"
echo "Kodune töölaud"</pre>
Et natuke selgust majja tuua, siis on see lühike skript, mis käivitab järjestikku mõningad käslused. Kui vaadata, mis järgneb cpu= real, siis esimesena käivitatakse käsk sensors, toruga eraldatuna leitakse sealt rida, mis sisaldab stringi CPU. Järgmine käslus prindib sellelt realt välja kolmanda stringi, ehk siis algkujul +39°C ning viimane käsklus eemaldab selle stringi küljest meile ebavajlikud märgid. Tulemuseks jääb vaid 39. Käsklused echo "a long time" ning echo "Kodune töölaud" on vajalikud selleks, et saaks täidetud see info kui kaua on masin üleval olnud ja mis masinaga on tegu (silmas tuleb pidada seda, et MRTG võrdleb alati kahte tulemust, seega kui on soov jälgida vaid ühte sensorit või mõnda muud tulemust, siis tuleb ta välja printida kaks korda järjest). Kellel tahtmist/viitsimist, võib ka uptime'i kontrollimiseks if lausetega scripti valmis kribada :)
Et kontrollida, kas script ka töötab, on vaja talle anda käivitamiseks vajalikud õigused
[root@localhost root]# chmod +x /var/www/html/mrtg/scriptid/temperatuurid.sh
Ning siis script käivitada
<pre>[root@localhost sander]# /var/www/html/mrtg/scriptid/temperatuurid.sh
39
41
a long time
Kodune töölaud</pre>
Nagu näha on tulemus käes ja üle jääb see vaid MRTGga ühendada.
<pre>### Temperatures
Target[temperatures]: `/var/www/html/mrtg/scriptid/temperatuurid.sh`
Title[temperatures]: Temperatures
PageTop[temperatures]: <H1>Temperatures</H1>
MaxBytes[temperatures]: 100
YLegend[temperatures]: °C
ShortLegend[temperatures]: °C
LegendI[temperatures]: CPU
LegendO[temperatures]: PSU
Legend1[temperatures]: Temperature of CPU
Legend2[temperatures]: Temperature of PSU
Options[temperatures]: gauge, growright, nopercent</pre>
Sellega teen ka siinkohal õpetusele lõpu, kellel ideid mõne muu info jälgimiseks, siis oleks teretulnud näha neid kommentaarides :)
==MRTG kasutamine edasijõudnutele==