Skip to content

AugustusKling/yield

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

yield

Extensible, lean event processing.

Demonstrates a simple CEP implementation. Basic concepts are implemented but the set of high-level functions is still limited. Functions can be provided though using the function call via sub-classes of FunctionConfig from config files.

Executing yield without parameters prints a concise function reference.

Example usage (configuration file content):

# Watch a file for changes.
watch "/var/log/sample.log"
# Merge indented lines.
combine
# Read lines as JSON object or convert them if the former fails.
toJSON
# Apply a regular expression to split up the log event's message.
grok message ^(?<time>[^ ]+) (?<level>\w+)\s+\[(?<module>[^\]]+)\] (?<message>.+)$
# Discard everything but errors. level and module are properties in the JSON event.
where level="ERROR" and module contains "democomponent"

# Save remaining events to a file, one JSON object per event.
save "/tmp/filtered.json

About

Extensible, lean event processing.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages