Jump to: navigation, search

Difference between revisions of "Monasca/Events"

(Created page with "== Events API == === Events === * POST /v2.0/events: Publish an event. * GET /v2.0/events/{event_id}: Get an event with the specific event ID. * GET /v2.0/events: List events....")
 
(MySQL)
Line 45: Line 45:
  
 
== MySQL ==
 
== MySQL ==
Initialize Winchester schemas
+
* Initialize Winchester schemas
Initialize Monasca transforms and pipeline schemas.
+
* Initialize Monasca transforms and pipeline schemas.
  
 
== Demo ==
 
== Demo ==
 
Look into creating a demo of a pipeline handler using Iron.IO.
 
Look into creating a demo of a pipeline handler using Iron.IO.

Revision as of 15:47, 30 January 2015

Events API

Events

  • POST /v2.0/events: Publish an event.
  • GET /v2.0/events/{event_id}: Get an event with the specific event ID.
  • GET /v2.0/events: List events.

Transforms

  • POST /v2.0/transforms: POST a transform
  • GET /v2.0/transforms: List transform
  • GET /v2.0/transforms/{transform_id}
  • DELETE /v2.0/transforms/{transform_id}

Pipelines

  • POST /v2.0/pipeline: Creates a pipeline with the following parameters in the JSON body
    • name (string(255), required) - A unique name of the pipeline. Note, the name must be unique.
    • description (string(255), optional) - A description of a pipeline
    • match_by - Criteria to match on
    • distinguish_by - Criteria to distinguish events on. For example, "instance_id".
    • expires - Time in milliseconds that a pipeline expires and the expire actions are invoked.
    • fire_actions ([string(50)], optional) - Array of notification method IDs that are invoked when the pipeline fires.
    • expire_actions ([string(50)], optional) - Array of notification method IDs that are invoked when the pipeline expires.
  • GET /v2.0/pipelines
  • GET /v2.0/pipelines/{pipeline_id}
  • DELETE /v2.0/pipelines/{pipeline_id}

Transformation Engine

Consumes events from Kafka, transforms them, and publishes to Kafka.

Event Engine

Consumes transformed events from Kafka, and uses the Winchester pipeline to process them.

Distiller

No changes required.

Winchester

Add Support for multi-tenancy Dynamically update pipelines. Add and delete pipeline definitions at run-time. Currently, the Winchester pipelines needs to be created at start-up time. Supply pipeline definitions in methods, not yaml files. Winchester currently reads the pipeline configuration information from yaml files at start-up time. Create pipeline handler that publishes notification events such that the Notification Engine can consume them.

Notification Engine

Needs to be able to consume general events from the Threshold Engine or Winchester Pipeline Handler.

Threshold Engine

Update to generate more general alarm state transition events.

MySQL

  • Initialize Winchester schemas
  • Initialize Monasca transforms and pipeline schemas.

Demo

Look into creating a demo of a pipeline handler using Iron.IO.