Előző 7.2 Mérés definíciók Következő

7.2.3 Nem SNMP mérések szintakszisa

Egy Perl kifejezést készíthetünk, a következő speciális változókkal ($ jel nélkül!!!):

Mind a periódikus mind az irreguláris mérések esetében:

  • OUT: A mért érték az OUT változó értéke lesz. A program a kiértékelés során automatikusan hozzárak a kifejezéshez egy „return OUT;” sort, de természetesen lehetőség van a kiértékelésben is használni ezt.
  • NO_LINEAR_OUT: A szerepe ugyanaz, mint az OUT-nak, a különbség a visszaadott érték feldolgozásában van: az OUT használata esetén az alkalmazás ugyanúgy lineáris nyújtást végez a kapott értéken, mint az interfész mérések esetében, tehát ha a visszaadott érték X, az előző érték pedig Y, akkor az eltárolt érték (X-Y)*INTERVAL/(INTERVAL+DIFFTIME)+Y. Ha a képletben NO_LINEAR_OUT szerepel, akkor nem történik ilyen feldolgozás
  • FLOAT_OUT: A szerepe ugyanaz,  mint a NO_LINEAR_OUT-nak, kivéve, hogy ennek a használatával a mérés értéke nem csak egész szám lehet
  • NEGATIVE_OUT: Ugyanaz, mint az OUT, csak az értéke negatív is lehet. Csak akkor használható, ha a Számláló mező értéke Nem
  • NEGATIVE_NO_LINEAR_OUT: Ugyanaz, mint a NO_LINEAR_OUT, csak az értéke negatív is lehet. Csak akkor használható, ha a Számláló mező értéke Nem
  • NEGATIVE_FLOAT_OUT: Ugyanaz, mint a FLOAT_OUT, csak az értéke negatív is lehet. Csak akkor használható, ha a Számláló mező értéke Nem
  • UPTIME: Az eszköz által visszaadott UPTIME érték, amenyiben azt a mérő modul vissza tudja adni
  • TIME: A mérés tényleges ideje Unix time alakban
  • #VÁLTOZÓ#: A program a fenti szám alakban megadott VÁLTOZÓT-t méri (pl ORA_SESSIONS vagy ORA_TBL_USED.1)
  • #VÁLTOZÓ.PRE#: A fenti szám alakban megadott VÁLTOZÓ előző ciklusbeli mérési értéke
  • #VÁLTOZÓ.PORT#: A program a VÁLTOZÓ.port értéket méri. Ezt az értéket használhatjuk táblák esetében, a port lehet tetszőleges azonosító (nem csak szám)
  • #VÁLTOZÓ.PORT.PRE#: A mérés előző értéke
  • PREVINVAL: A mérési képlet első kifejezésének az eredménye az előző mérési ciklusban. Ha nem volt akkor sikeres mérés, akkor ha nem lehet negatív a mérés eredménye, akkor értéke -1, amúgy undef
  • PREVOUTVAL: Hasonló, mint a PREVINVAL, de a második kifejezés eredményével
  • PREVVAL: Ha az első mérési kifejezésben használjuk, akkor ugyanaz, mint a PREVINVAL, amúgy pedig ugyanaz, mint a PREVOUTVAL

 

Periódikus mérések esetében:

  • DIFFTIME: A mérés tényleges ideje és a referencia ideje közötti érték másodpercben. A mért értékek mindig egész mérési intervallumhoz kerülnek eltárolásra, tehát ha a tényleges mérés 7 perckor született, és az intervallum 5 perc, akkor a DIFFTIME értéke 120
  • PREVDIFFTIME: A DIFFTIME értéke az előző mérési ciklusban
  • INTERVAL: A mérési intervallum értéke másodpercben

 

Irreguláris mérések esetében:

  • INTERVAL: Ha volt előző mérési érték, akkor az azóta eltelt idő másodpercben. Ha nem volt, akkor 0 az értéke
  • EXPECTED_IN_SEC: A mérés „Adatok elvárt minimum intenzitása” paramétere
  • PREVTIME: Ha volt előző mérési érték, akkor az ahhoz tartozó TIME paraméter értéke, egyéb esetben -1
  • SET_TIME: Ez nem bemeneti, hanem kimeneti paraméter, azaz a mérés képletben értéket lehet neki adni. Ha nem használjuk fel, akkor a mérés az adatgyűjtő által adott időponthoz kerül eltárolásra (például az aktuális időponttal). Ha kap értéket, akkor azt Unix idő szerint kell megadni (ahogyan a TIME paraméter is van)

 

A mérés képletek kiértékelése során az OUT, NO_LINEAR_OUT és FLOAT_OUT esetekben „-1” értéket vesznek fel az egyes VÁLTOZÓ változók, ha a lekérdezésük nem volt sikeres, illetve ha a mérést nem tekintjük sikeresnek, úgy -1 értéket kell visszaadni. Ezzel szemben ha a NEGATIVE_OUT, NEGATIVE_NO_LINEAR_OUT vagy a NEGATIVE_FLOAT_OUT esetet használjuk, úgy nem definiált (undef) értéket vesznek fel az egyes VÁLTOZÓ változók, ha a lekérdezésük nem volt sikeres, illetve ha a mérést nem tekintjük sikeresnek, úgy szintén nem definiált (undef) értéket kell visszaadni.

 

Aktív mérő szerver típus esetében az elkészített Perl kifejezés tetszőleges lehet, tartalmazhat akárhány változó definíciót, azonban passzív mérő szerver típus esetében egy mérésben csupán csak egy változó szerepelhet.

 

Mintapéldák:

Kívánt mérés

Kifejezés

Oracle táblatér kihasználtság

NO_LINEAR_OUT = ( #ORA_TBL_SIZE.PORT# > 0 ? #ORA_TBL_USED.PORT# / #ORA_TBL_SIZE.PORT#*100 : -1);

Oracle összes session

NO_LINEAR_OUT=#ORA_SESSIONS#;

Általános ASCII mérés

NO_LINEAR_OUT=#VALUE1.PORT#;