ANN: ruleCore - The event pattern detector engine

M

Marco

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
 
G

GrayGeek

Marco said:
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.
 
M

Marco

Yes, I can imagine that there are lots of events in an industrial
process control setup. I suppose all these events could be fed into ruleCore
and there it could detect all kinds of interesting patterns of events
that should be reacted to.

I didn't understand much of the ladder, but it seems to be some kind of
tool for event correlation just as ruleCore is.
 
G

GrayGeek

Marco said:
Yes, I can imagine that there are lots of events in an industrial
process control setup. I suppose all these events could be fed into
ruleCore and there it could detect all kinds of interesting patterns of
events that should be reacted to.

I didn't understand much of the ladder, but it seems to be some kind of
tool for event correlation just as ruleCore is.

Most industrial process controllers come with a software/hardware modeling
tool that uses the IEC 1131-3 language. Once you get the model working
(using Ladder, for instance) you can then burn the software that the Ladder
generates into the control EPROM.
 
M

Marco

GrayGeek said:
Most industrial process controllers come with a software/hardware modeling
tool that uses the IEC 1131-3 language. Once you get the model working
(using Ladder, for instance) you can then burn the software that the Ladder
generates into the control EPROM.

ok, this seems to be a bit more low-level than ruleCore is intended
for. But
people tend to use software in the most strange ways.... ;)

It is a interesting idea to use ruleCore for monitoring industrial
process
things, really cool.
I suppose there exists some kind of standard to extract events from
your typical
industrial process thingy and somehow collect them all and send them
into a ruleCore instance?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,186
Members
46,744
Latest member
CortneyMcK

Latest Threads

Top