Annotation Interface Throttle


@Target(TYPE) @Inherited @Retention(RUNTIME) public @interface Throttle
Event annotation, specifies the maximum rate of events per time unit, (for example, "100/s").

If the event class annotated with Throttle is filtered by other settings, such as a Threshold or a user-defined setting, the throttling will happen after those settings have been applied.

Since:
25
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Setting name "throttle" for configuring throttled events.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    The throttle rate, for example "100/s".
  • Field Details

  • Element Details

    • value

      String value
      The throttle rate, for example "100/s".

      String representation of a non-negative long value followed by a forward slash ("/") and one of the following units:

      • "ns" (nanoseconds)
      • "us" (microseconds)
      • "ms" (milliseconds)
      • "s" (seconds)
      • "m" (minutes)
      • "h" (hours)
      • "d" (days)

      Example values, "6000/m", "10/ms" and "200/s".

      Specifying zero, for example "0/s", results in no events being emitted.

      Specifying "off" (case-sensitive) results in all events being emitted.

      Returns:
      the throttle value, default "off" not null
      Default:
      "off"