Next: Timing of Throttling
Up: How Throttling Works
Previous: How Throttling Works
active/inactive - a throttle becomes active once it has seen the (limit+1)th message within the specified interval.
The throttle becomes inactive once an entire interval has passed without seeing a matching message. And, of course, upon creation,
the throttle is set to inactive status.
enabled/disabled - A throttle becomed enabled once a message matching that throttle has been sent to CMLOG. The throttle then keeps
track of incoming messages and becomes active if more than the limit of messages allowed in the specified interval have been sent to CMLOG.
The throttle becomes disabled once an entire interval has passed without seeing any matching messages. Note that there is a difference
between "active" and "enabled", but there is no difference between "inactive" and "disabled".
fixed/floating interval - A fixed interval is one that starts at a specific time and 'cycles' itself from that time. For example, a fixed
10 second interval starting at time 0:00 would end its first interval at 0:10, its second at 0:20, and so forth. A floating interval is one that
whose start and end times are defined by some event or behavior. If we are evaulating a queue of messages and want to evaluate whether we have seen
3 messages over a 10 second period of time, and have messages at 0:01, 0:03, 0:10 and 0:14, if we choose our floating interval start time to
be 0:01, we have the first 3 messages within that interval. If we choose our floating interval start time to be 0:03, we only have the second and third messages
within that interval. Using floating intervals gives us more accurate timing of beginning a throttle.
limit - the number of messages allowed to pass through the filter to CMLOG within a given
interval(see definition of interval). The (limit+1)th message to arrive within the specified interval
will be the first message to be throttled.
interval - the length of time, in seconds, that a throttle is "monitoring" the queue of incoming messages, looking for
a match.
matching - A message matches a throttle when a throttle and an incoming message have at least one matching value for
a mutually defined tag.
noisy - A message that is repeatedly logged to CMLOG within a short period of time (often to the point of making it
difficult to browse for other messages) is "noisy". A throttle can be set to pacify a "noisy" application, EPICS channel etc.
that is repeatedly issuing the same or similar messages within a short period of time.
quiet - A channel, EPICS PV, or application that is "quiet" is one that has not sent messages to CMLOG over an extended
period of time. A throttle has been "quiet" if no matching messages have been sent to CMLOG for an extended period of time.
tag - a tag corresponds to a column in the CMLOG browser
throttling - the act of filtering incoming messages based on specific matching criteria.
value - an integer, double, string, or other CDEV data type that is paired with a tag. The SLAC filter will compare the
values of incoming messages to those of the throttle list to determine whether a match exists.
wildcarding - given a specific tag, a "wildcard" value will match on any value for that tag. For example, if we wanted
a throttle to match on any defined value for the "text" tag, we would set our value to be the wildcard value(see the wildcard
section for details on how to setup a wildcard throttle).
James Silva
2002-09-23