Monitorując urządzenia (np. drukarki) za pomocą SNMP możemy uzyskać czas pracy urządzenia mierzony w „timeticks”. Kogo jednak interesuje czas pracy mierzony w setnych częściach sekundy (bo tak zdefiniowana jest w tym przypadku jednostka miary czasu)? Na ogół wolelibyśmy ten parametr podany w godzinach.

Operations Manager potrafi przeskalować na wykresach wartości liczników wydajnościowych korzystając z potęg liczby 10.
 

 
Aby osiągnąć pożądaną postać potrzebujemy jednak wartości podzielonej przez 360000.  Skoro nie robi tego interfejs graficzny wykresów wydajnościowych, można przekształcić zbierane dane.

Jeżeli spojrzeć do postaci XML reguły zbierającej dane wydajnościowe, zobaczymy fragment:
 

 
Wartość obliczana musiałaby być podzielona przez współczynnik 360000, aby wartość mierzona była wyrażona w godzinach, a nie setnych częściach sekundy.

Wartość licznika wydajnościowego, określona jako ComputedPerformanceValue pochodzić będzie z dzielenia (Division) dwóch wartości liczbowych (NumericValue). Pierwsza z tych wartości, to odwołanie do tego samego elementu SNMP, co w oryginalnym wyrażeniu, zaś drugie wyrażenie ma postać liczby, przez którą przeprowadzane jest dzielenie. W ten sposób otrzymujemy:
 

 
Ostatecznie pokazywany jest czas pracy (Uptime) w godzinach:
 

 
Podobne podejście można zastosować także w przypadku, gdy jeden OID przechowuje wartość licznika a inny jednostkę miary. W tym drugim przypadku jest to wartość statyczna, która powinna pochodzić z procesu Discovery, a nie z samego monitorowania.

Zostaw komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *