Elemento eventCountThreshold

El elemento <eventCountThreshold> sólo es válido para la regla de umbral. Define el número de sucesos que deben cumplir los criterios de selección de sucesos en un periodo de tiempo determinado. El elemento <eventCountThreshold> también especifica una de las dos modalidades posibles de intervalo de tiempo, fijo o modificable, para la ventana de tiempo.

Detalles

intervalo fijo
Un intervalo fijo empieza cuando se recibe el primer suceso que cumple los criterios de selección de sucesos y termina cuando se da una de las siguientes situaciones:
  • La regla llega a su umbral dentro de la duración de tiempo especificada.
  • Termina la duración de tiempo especificada.
intervalo modificable
Un intervalo modificable empieza cuando se recibe el primer suceso que cumple los criterios de selección de sucesos. Sin embargo, si la regla no ha llegado a su umbral y ha terminado la duración de tiempo especificada, la ventana de tiempo ajusta (modifica) el tiempo de inicio al momento de recepción de un nuevo "primer" suceso, que es normalmente el siguiente suceso que se acepta. El intervalo modificable continúa ajustándose de esta forma hasta que se de una de las siguientes situaciones:
  • La regla llega a su umbral dentro de la duración de tiempo especificada.
  • Después de recibir el suceso que inicia la ventana de tiempo, no se recibe ningún otro suceso dentro de la duración de tiempo especificada.
El suceso que inicia la ventana de tiempo (y pasa a ser el nuevo "primer" suceso) es el suceso con una hora de recepción que cumple estos criterios: la hora de recepción más la duración del intervalo de tiempo para esa regla, es mayor que la hora actual. El mismo criterio en forma de ecuación sería:
hora de recepción del suceso + duración del intervalo de tiempo para la regla > hora actual
Cuando no existe tal suceso, el intervalo modificable no puede ajustar más el tiempo, así que termina.
La regla de umbral cuenta cada suceso aceptado hasta que, o se llega al umbral, o termina el periodo de tiempo. Entonces ejecuta las acciones definidas en el elemento <onDetection> o en el elemento <onTimeOut>, según corresponda.
acciones <onDetection>
Estas acciones se ejecutan cuando el recuento de sucesos es igual al valor definido por el atributo de umbral del elemento <eventCountThreshold>, lo cual indica que se ha llegado al umbral.
acciones <onTimeOut>
Cuándo se ejecutan estas acciones depende de si la modalidad de intervalo de tiempo es fija o modificable.
modalidad fija
Con la modalidad fija, estas acciones se ejecutan cuando expira la ventana de tiempo.
modalidad modificable
Con la modalidad modificable, estas acciones se ejecutan si, una vez se ha recibido el suceso que inicia la ventana de tiempo, no se recibe ningún otro suceso dentro de la duración de tiempo especificada. Dicho de otro modo, no se recibe ningún suceso con una hora de recepción tal que sumándole la duración del intervalo de tiempo para la regla, sea mayor que la hora actual.

La modalidad del intervalo de tiempo para la ventana de tiempo la define el atributo timeIntervalMode del elemento <eventCountThreshold>. El siguiente caso práctico ilustra el comportamiento de, y las diferencias entre, las dos posibles modalidades de intervalo de tiempo.

Caso que ilustra las modalidades fija y modificable

Supongamos que la regla recibe cuatro sucesos que cumplen los criterios de selección de sucesos, un suceso en cada una de las siguientes horas: 8:00, 8:04, 8:06, y 8:07. El umbral para el recuento de sucesos es 3, y la duración para la ventana de tiempo es 5 minutos.
Comportamiento de la regla con modalidad fija (fixed)
Con esta modalidad de intervalo de tiempo, la regla de umbral empieza a procesarse a las 8:00, y ejecuta las acciones <onTimeOut> a las 8:05 porque recibe sólo 2 sucesos en 5 minutos. Por lo tanto, no llega a su umbral dentro de la ventana de tiempo. Cuando se recibe el tercer suceso a las 8:06, la regla de umbral empieza a procesarse otra vez, y ejecuta las acciones <onTimeOut> a las 8:11 porque recibe sólo 2 sucesos en 5 minutos.

La modalidad fija es estática.

Comportamiento de la regla con modalidad modificable (sliding)
Con esta modalidad de intervalo de tiempo, la regla de umbral empieza a procesarse a las 8:00. A las 8:05, cuando la regla está programada para terminar, la regla determina que sólo ha recibido 2 sucesos. Entonces descarta el suceso que ha recibido a las 8:00 y recalcula la duración para que termine a las 8:09 (puesto que el primer suceso es ahora el que se recibió a las 8:04). Cuando la regla recibe el siguiente suceso a las 8:07, ejecuta las acciones <onDetection> porque ahora sí que ha llegado a su umbral (3 sucesos, a las 8:04, 8:06, y 8:07) dentro de la última ventana de tiempo (8:04 - 8:09).

La modalidad modificable es dinámica en tanto en cuanto continúa ajustando (modificando) el tiempo de inicio en un intento de llegar al umbral dentro de la ventana de tiempo.

Ahora supongamos que la regla recibe 4 sucesos que cumplen los criterios de selección de criterios, un suceso en cada una de las siguientes horas: 8:00, 8:04, 8:06, y 8:10. El umbral para el recuento de sucesos es 3, y la duración para la ventana de tiempo es 5 minutos.
Comportamiento de la regla con modalidad modificable (sliding)
En este caso, la regla de umbral empieza a procesarse a las 8:00. A las 8:05, cuando la regla está programada para terminar, la regla determina que sólo ha recibido 2 sucesos. Entonces descarta el suceso que ha recibido a las 8:00 y recalcula la duración para que termine a las 8:09 (puesto que el primer suceso es ahora el que se recibió a las 8:04).

A las 8:09, cuando la regla está programada para terminar, la regla determina que sólo ha recibido 2 sucesos. Entonces descarta el suceso que ha recibido a las 8:04 y recalcula la duración para que termine a las 8:11 (puesto que el primer suceso es ahora el que se recibió a las 8:06).

A las 8:11, cuando la regla está programada para terminar, la regla determina que sólo ha recibido 2 sucesos. Entonces descarta el suceso que ha recibido a las 8:06 y recalcula la duración para que termine a las 8:15 (puesto que el primer suceso es ahora el que se recibió a las 8:10).

A las 8:15, cuando la regla está programada para terminar, la regla determina que no ha recibido ningún suceso desde el suceso de las 8:10 que inició la ventana de tiempo. Entonces la regla ejecuta las acciones <onTimeOut>.

Atributos

<eventCountThreshold> tiene los siguientes atributos:

Tabla 1. Atributos del elemento <eventCountThreshold>
Nombre Descripción Tipo de datos ¿Obligatorio?
threshold Define el número de sucesos que deben cumplir los criterios de selección de sucesos dentro de un periodo de tiempo determinado. Es el umbral de recuento de sucesos al que hay que llegar. Su valor debe ser un entero positivo. xsd:positiveInteger
timeIntervalMode Define si el intervalo de tiempo para la ventana de tiempo es fijo o modificable. Los valores válidos para este atributo son:
  • fixed (el valor predeterminado)
  • sliding
xsd:string No

Contenido en

<eventCountThreshold> está contenido en el siguiente elemento:

Contiene

<eventCountThreshold> no contiene elementos.