Skip to content

Notes on a Wiring Language

Alexander Dean edited this page Nov 22, 2015 · 2 revisions

LibEMP has a level of complication that I wish to avoid when it comes to operational setup and deployment. The primary pain comes from the configuration, layout, and wiring of Monitors to Buffers and Buffers to Sinks on a per host basis. Part of my idea to alleviate some of this pain comes with the definition of a Wiring language.

Goals of a Wiring Language:

  1. Each Component can be configured for their startup.
  2. Each Monitor can choose which Buffer to push to (unless LibEMP forces single semantics Buffer only).
  3. Each Sink can choose which Buffer it reads from (unless LibEMP forces single semantics Buffer only).
  4. Each LibEMP Node can define which Monitor/Buffer/Sink starts up.
  5. A configuration can be loaded dynamically on an already running Node (thus Nodes can start blank).
  6. The configuration script can be version controlled.
  7. The configuration script is simple to learn/use and automatically generate.

//TODO: Look into patching into some of the configuration management systems out there. I would rather use one of them rather than roll our own.