juniSystemUtilizationThresholdRising
1.3.6.1.4.1.4874.2.2.2.1.10.1.1.7
The threshold value (risingVal), which, in conjunction with
juniSystemUtilizationHoldDownTime (holdTime) and
juniSystemUtilizationThresholdFalling (fallingVal), is used to decide
when to trigger an event indicating that the resource utilization,
juniSystemUtilizationCurrentValue (currentVal), is approaching or has
reached its maximum capacity, juniSystemUtilizationMaxCapacity (maxVal).
See the DESCRIPTION for juniSystemUtilizationResourceSubType for what
constitutes a unit of value for this object.
The value of fallingVal must be less than the value of this object.
This object provides one element in the formula used to determine when
to send a utilization notification. If the currentVal rises to equal
the risingVal and no other utilization event (either rising or falling)
has been triggered within the holdTime, or if the holdTime for a falling
threshold notification expires and the currentVal is at or above the
risingVal, then and only then is a rising threshold utilization
notification sent.
The following pseudo-code states the algorithm more precisely.
When the resource is created or initialized ( currentVal == 0 ):
lastTrapType = none;
lastTrapTime = 0;
When currentVal increments (increases):
if ( currentVal == risingVal &&
lastTrapTime + holdTime <= currentTime ) {
triggerUtilizationTrapRising();
lastTrapType = rising;
lastTrapTime = currentTime; }
When currentVal decrements (decreases):
if ( currentVal == fallingVal &&
lastTrapTime + holdTime <= currentTime ) {
triggerUtilizationTrapFalling();
lastTrapType = falling;
lastTrapTime = currentTime; }
When the rising threshold value is modified:
if ( currentVal < oldRisingVal &&
currentVal >= newRisingVal &&
lastTrapTime + holdTime <= currentTime )
triggerUtilizationTrapRising();
lastTrapType = rising;
lastTrapTime = currentTime; }
When the falling threshold value is modified:
if ( currentVal > oldFallingVal &&
currentVal <= newFallingVal &&
lastTrapTime + holdTime <= currentTime )
triggerUtilizationTrapFalling();
lastTrapType = falling;
lastTrapTime = currentTime; }
When a hold-down time expires (lastTrapTime + holdTime == currentTime):
switch ( lastTrapType ) {
case rising:
if ( currentVal <= fallingVal ) {
triggerUtilizationTrapFalling();
lastTrapType = falling;
lastTrapTime = currentTime; }
else {
lastTrapType = none; }
break;
case falling:
if ( currentVal >= risingVal ) {
triggerUtilizationTrapRising();
lastTrapType = rising;
lastTrapTime = currentTime; }
else {
lastTrapType = none; }
break; }