API Reference

mbostock edited this page Apr 22, 2012 · 16 revisions

WikiAPI Reference


Collectors receive events from emitters and save them to Cube's Mongo database.

  • /1.0/event/put - send events, either as HTTP POST or WebSockets.
  • udp - send events via UDP.
  • /collectd - send events from collectd.


Evaluators compute metrics and stream events to clients.


Time-stamped events are how you get data into Cube.

  • event.type - a name for grouping related events (such as "request").
  • event.time - the event time in ISO 8601 format, UTC.
  • event.id - an optional unique identifier for replacing events.
  • event.data - an optional JSON blob for storing additional data with events.


Metrics are how you analyze events; group and reduce.

  • metric.time - the metric value time in ISO 8601 format, UTC.
  • metric.value - the computed metric value; may be undefined with missing data.
  • metric.id - optional; a unique identifier for multiplexing metric requests.


The evaluator supports two different types of queries for finding events and computing metrics.


Cube provides a JavaScript WebSockets client for posting events to a collector.


  • cube_request - a built-in event that records requests sent to Cube's endpoints.
  • cube_compute - a built-in event that records information about Cube's work computing metric.