ANN: ruleCore - The event pattern detector engine

GrayGeek jkrepsBEAR at FISHneb.rr.com
Tue Nov 11 08:54:58 EST 2003


Marco wrote:

> I would hereby like to announce that ruleCore 1.0beta6 is available
> under the GPL license from www.rulecore.com
> 
> ruleCore is an event-driven reactive rule engine with GUI tools,
> all written in Python.
> 
> The ruleCore Engine accepts events with XML-RPC and detects
> complex patterns of events, called situations. A situation is
> defined by combining events with different kind of nodes, such as
> logical or timer nodes.
> 
> For example, ruleCore can do things like:
> "Detect the situation, if it is not december, when event HOST_DOWN
> comes after event ROUTER_DOWN and event FAILOVER does not come
> within 10 minutes"
> 
> When a situation is detected a condition can be evaluated on all the
> events that took part in the detection process. If the condition is
> true an action is executed, normally a script.
> 
> 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.
> 
> 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 is 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.
> 
> /Marco

Interesting concept.   Where millisecond reaction time is not important it
could even be considered 'realtime'.  I've been working on a process
control project and needed  a Linux solution.   There is an entire, well
developed industry surrounding process control, standardized on the
EN 61131-3 or IEC 1131-3 language description.   
Here is an example of industrial process control:
http://omarz.htmlplanet.com/S7_Automation.htm
The language defined above is used to program process controllers one of
four methods, two graphical, and two using scripts.  
Here are some Linux based solutions:
http://www.linux-automation.de/plc/index_en.html
Here is a Linux program that utilizes one of the graphical methods, called
"Ladder". 
http://membres.lycos.fr/mavati/classicladder/
I think you'll see the strong similarities between your rule engine and the
classic ladder, as shown by the snapshots of the engine at work.


-- 

-
GrayGeek




More information about the Python-list mailing list