Un consumidor de sucesos o una herramienta administrativa pueden suprimir
sucesos del almacén de datos utilizando la interfaz de acceso a sucesos.
Por qué y cuándo se efectúa esta tarea
Puede suprimir todos los sucesos del almacén de datos o puede limitar
los sucesos suprimidos especificando grupos de sucesos, selectores de sucesos o
ambos.
Nota: Si la seguridad de WebSphere está habilitada, el ID de usuario de
la aplicación debe correlacionarse con el rol eventAdministrator para suprimir
sucesos.
Pasos para realizar esta tarea
Para suprimir sucesos del almacén de datos, utilice el método
purgeEvents() del bean de acceso a sucesos. int purged = eventAccess.purgeEvents(grupo_sucesos,
selector_suceso,
tamaño_transacción);
Los parámetros
son los siguientes:
- grupo_sucesos
- Serie que contiene el nombre del grupo de sucesos que incluye los sucesos que
desea suprimir. Debe ser el nombre de un grupo de sucesos existente definido en la
configuración de la infraestructura de sucesos. Si no desea especificar un grupo de
sucesos, este parámetro puede quedar vacío.
- selector_suceso
- Serie que contiene un selector de suceso opcional que identifica los sucesos que
deben suprimirse. Un selector de suceso se especifica con la forma de una expresión
XPath (para obtener más información, consulte
el apartado Escritura de selectores de sucesos).
Si no desea especificar un selector de suceso, este parámetro puede quedar vacío.
- tamaño_transacción
- Un entero distinto de cero que especifica el número de sucesos que desea
suprimir en una única transacción de base de datos. En la mayoría de casos, puede usar la
constante DEFAULT_PURGE_TRANSACTION_SIZE, que define la interfaz EventAccess.
Resultado
El método purgeEvents() suprime todos los sucesos que coinciden con todos
los criterios que especifique. Si los parámetros grupo_sucesos y
selector_suceso son nulos, todos los sucesos del almacén
de datos se suprimen. Los sucesos que lleguen después de la operación de supresión
no se depurarán. El valor devuelto es un entero que especifica cuántos sucesos se
han suprimido.
Nota: Si el valor del parámetro
tamaño_transacción supera el tamaño máximo de transacción
de depuración, se emite una excepción PurgeThresholdExceededException y no se
suprimen sucesos. El tamaño máximo predeterminado de la transacción de depuración es
de 100.000.