Threshold Alarms can be configured for a limiter based on any limiter statistics.
|   | See the Configuring Rules section for general instructions on installing threshold alarm rules, and the configuration example on this page. | 
Pre-existing alarms
By default Rhino has two threshold alarms pre-configured to indicate when one of the two pre-configured limiters rejects work: the SystemInput Rejecting Work alarm for the SystemInput limiter, and the QueueSaturation Rejecting Work alarm for the QueueSaturation limiter.
Each rate limiter may also generate a Negative capacity alarm if it reaches a limit to the amount of forced work it can keep track of.
SystemInput rejecting work
| Alarm Message | SystemInput rate limiter is rejecting work | 
|---|---|
| Type | LIMITING | 
| Instance ID | system-input-limiter-rejecting-work | 
| Level | MAJOR | 
| Raised if… | …the SystemInput limiter is rejecting work for more than one second. | 
| Cleared if… | …the SystemInput limiter has not rejected any work for five seconds. | 
| Example output | 2009-03-02 17:13:43.893  Major   [rhino.facility.alarm.manager]   <Timer-2> Alarm 101:136455512705:8
    [SubsystemNotification[subsystem=ThresholdAlarms],LIMITING,system-input-limiter-rejecting-work]
    was raised at 2009-03-02 17:13:43.893 to level Major
        SystemInput rate limiter is rejecting work | 
QueueSaturation Rejecting Work
| Alarm Message | QueueSaturation limiter is rejecting work | 
|---|---|
| Type | LIMITING | 
| Instance ID | queue-saturation-limiter-rejecting-work | 
| Level | MAJOR | 
| Raised if… | …the QueueSaturation limiter is rejecting work for more than one second. | 
| Cleared if… | …the QueueSaturation limiter has not rejected any work for five seconds. | 
| Example output | 2009-03-02 17:16:37.697  Major   [rhino.facility.alarm.manager]   <Timer-1> Alarm 101:136455512705:10
    [SubsystemNotification[subsystem=ThresholdAlarms],LIMITING,queue-saturation-limiter-rejecting-work]
    was raised at 2009-03-02 17:16:34.592 to level Major
          QueueSaturation limiter is rejecting work | 
Negative capacity alarm
| Alarm Message | Token count in rate limiter "<LIMITER_NAME>" capped at negative saturation point on node <NODE_ID>. Too much work has been forced. Alarm will clear once token count >= 0. | 
|---|---|
| Type | ratelimiter.below_negative_capacity | 
| Instance ID | nodeID=<NODE_ID>,limiter=<LIMITER_NAME> | 
| Level | WARNING | 
| Raised if… | …a very large number of units have been forcibly used and the internal token counter has reached the biggest possible negative number (-2,147,483,648). | 
| Cleared if… | …token counter >= 0 | 
| Example output | 2009-03-05 01:14:59.597  Warning [rhino.facility.alarm.manager]   <Receiver for switchID 1236168893> Alarm 101:136654511648:16
[SubsystemNotification[subsystem=LimiterManager],limiting.ratelimiter.below_negative_capacity,nodeID=101,limiter=SystemInput]
  was raised at 2009-03-05 01:14:59.596 to level Warning
        Token count in rate limiter "SystemInput" capped at negative saturation point on node 101.
        Too much work has been forced. Alarm will clear once token count >= 0. | 
Threshold alarm example
The following configuration example defines the pre-existing system-input-limiter-rejecting-work alarm.
<threshold-rules active="true" name="system-input-limiter-rejecting-work">
    <trigger-conditions name="Trigger conditions" operator="OR" period="1000">
        <simple-threshold operator=">" value="0.0">
            <select-statistic calculate-delta="true" parameter-set="Limiters.SystemInput" statistic="unitsRejected"/>
        </simple-threshold>
    </trigger-conditions>
    <reset-conditions name="Reset conditions" operator="OR" period="5000">
        <simple-threshold operator="==" value="0.0">
            <select-statistic calculate-delta="true" parameter-set="Limiters.SystemInput" statistic="unitsRejected"/>
        </simple-threshold>
    </reset-conditions>
    <trigger-actions>
        <raise-alarm-action level="Major" message="SystemInput rate limiter is rejecting work" type="LIMITING"/>
    </trigger-actions>
    <reset-actions>
        <clear-raised-alarm-action/>
    </reset-actions>
</threshold-rules>|   | The default threshold alarms can be modified or removed as needed. | 
