ANN: ruleCore 1.0 - Engine for event pattern detection

Marco marco at analog.se
Thu Feb 19 08:56:55 EST 2004


I would hereby like to announce that ruleCore 1.0 is available under
GPL from www.rulecore.com

RuleCore is an event-driven reactive rule engine with GUI tools,
written in Python.

The ruleCore Engine accepts events with XML-RPC, IBM WebSphere MQ,
TIBCO Rendezvous or just plain TCP/IP sockets. The engine detects
complex patterns of events, called situations. By combining events
with different kind of nodes, such as logical or timer nodes, the
situation detector in ruleCore can detect all kinds of interesting
situations.

Just a simple example: 

"Detect the situation when event HOST_DOWN comes after event
ROUTER_DOWN and  event FAILOVER does not come within 10 minutes. But
don't do this while I'm on lunch between 12 and 13:30 every day."

A condition can be evaluated on all the events that took part in the
detection process after a situation is detected. If the condition is
true a number of actions can be executed, normally scripts.

The ruleCore Engine is written in completely in Python. The GUI tools
are also in Python and uses Qt with the PyQt wrapper. Everything is
tested on recent versions of SUSE and RedHat. The rpm contains
*everything* needed to run ruleCore, so it should run on most Linux
distributions. Source code is also available.

Portability to Windows and Mac is a goal, but not tested yet. But as
everything is in Python, it should run provided that all the required
software are installed. Although this is left as an exercise to the
interested reader.

The ruleCore Engine is based on ideas from the research done on active
rules called Event-Condition-Action (ECA) rules. Google on ECA-rules
or check the references section on www.rulecore.com to learn more
about this type of event-driven active rules.

What is it good for? I think ruleCore is usable for solving problems
in a number of areas. RuleCore, just like a dbms, is a tool that could
be used for many different kinds of applications. Just to mention a
few areas, system management, "real-time" log analyzing or network
monitoring could all benefit from being able to detect interesting
patterns in huge number of events, as they happen, and trigger alerts.
The ruleCore Engine can also be used together with a suitable
integration (EAI) architecture to feed it with events from various
business systems. This would enable ruleCore to detect interesting
business situations such as customers acting (or not acting) in
interesting ways.

/Marco



More information about the Python-list mailing list