Variables

En el lenguaje de reglas se utilizan ciertas variables para almacenar información relacionada con los sucesos entre distintas ocurrencias de sucesos o de reglas. Se puede acceder a esta información relacionada con los sucesos desde las expresiones de dentro de las reglas. Algunos tipos de variables las define el creador de reglas, y otras las proporciona Active Correlation Technology. Algunos tipos de variables pueden ser accedidas directamente dentro de la expresión, y otras solamente a través de métodos proporcionados por Active Correlation Technology.

Variables definidas en el elemento <variable> y accedidas a través de métodos

Puede definir una variable dentro del elemento <variable> para una regla, un bloque de reglas o un conjunto de reglas. Puede entonces acceder a esta variable dentro de una expresión utilizando uno de los siguientes métodos:
  • El método getVariable() o uno de los métodos getjavatypeVariable()
  • El método setVariable() o uno de los métodos setjavatypeVariable()
Por ejemplo, si define la variable rule_writer_variable dentro del elemento <variable> para una regla, puede acceder a esa variable con el siguiente código:
int sample_variable = act_lib.getIntVariable("rule_writer_variable");

Variables proporcionadas por Active Correlation Technology y accedidas directamente dentro de la expresión

Las siguientes variables las proporciona Active Correlation Technology. Puede utilizar estas variables incorporadas dentro de una expresión.
  • act_event
  • act_eventList
  • act_lib
Por ejemplo,con el siguiente código, puede acceder a la variable act_event para obtener el atributo hostname para un suceso:
act_event.getAttribute("hostname");

Variables proporcionadas por Active Correlation Technology y accedidas a través de métodos

Las siguientes variables las proporciona Active Correlation Technology. Puede acceder a estas variables dentro de una expresión utilizando el método getVariable() o uno de los métodos getjavatypeVariable().
  • act_eventCount
  • act_location
  • act_nodeName
  • act_threshold
Por ejemplo, con el siguiente código, puede acceder a la variable act_eventCount:
int eventcount_integer = act_lib.getIntVariable(IACTLibrary.EVENTCOUNT);
Tabla 1 muestra las constantes que la interfaz IACTLibrary proporciona para estas variables. En el código, para asegurar que no se encontrarán errores ortográficos o tipográficos durante la compilación en lugar de en tiempo de ejecución, utilice siempre las constantes que representan estas variables en lugar de las propias variables. Por ejemplo, utilice act_lib.getIntVariable(IACTLibrary.EVENTCOUNT); en lugar de act_lib.getIntVariable("act_eventCount");.
Tabla 1. Variables con las constantes asociadas
Variable Constante asociada
act_eventCount EVENTCOUNT
act_location LOCATION
act_nodeName NODENAME
act_threshold THRESHOLD
Referencia relacionada
Elemento variable