Skip to content
Mike Dewar edited this page Mar 15, 2014 · 33 revisions

Each block is briefly detailed below, along with the rules that define each block. To make a block in streamtools, double click anywhere on the page and type the name of the block as they appear below. For programmatic access, see the API docs.

generator blocks

These blocks emit messages on their own.

  • ticker. This block emits the time regularly. The time between emissions is specified by the Interval.
    • Rules:
      • Interval: duration string (1s)

flow blocks

These blocks are useful for shaping the stream in one way or another

  • join. This block joins two streams together. It waits until it has seen a message on both its inputs, then emits the joined message.
  • map. This block maps inbound data onto outbound data. The Map rule needs to be valid JSON, where each key is a string and each value is a valid gojee expression.
    • Rules:
      • Map:
      • Additive: (True)
  • mask
    • Rules:
      • Mask:
  • filter
    • Rules:
      • Filter: (. != null)
  • pack
    • Rules:
      • EmitAfter:
      • Path:
  • unpack
    • Rules:
      • Path:
  • sync
    • Rules:
      • Path:
      • Lag:
  • gethttp
    • Rules:
      • Path:

source blocks

These blocks hook into another system and collect messages to be emitted into streamtools.

  • fromhttpstream
    • Rules:
      • Endpoint:
      • Auth:
  • fromnsq
    • Rules:
      • ReadTopic:
      • LookupdAddr:
      • ReadChannel:
      • MaxInFlight: (0)
  • frompost
  • fromsqs
    • Rules:
      • SignatureVersion: (4)
      • AccessKey:
      • MaxNumberOfMessages: (10)
      • APIVersion: (2012-11-05)
      • SQSEndpoint:
      • WaitTimeSeconds: (0)
      • AccessSecret:
  • fromudp
    • Rules:
      • ConnectionString:
  • fromwebsocket
    • Rules:
      • url:

sink blocks

These blocks send data to external systems.

  • toelasticsearch
    • Rules:
      • Index:
      • Host:
      • IndexType:
      • Port:
  • tofile
    • Rules:
      • Filename:
  • tolog
  • tonsq
    • Rules:
      • Topic:
      • NsqdTCPAddrs:
  • tonsqmulti
    • Rules:
      • Topic:
      • Interval: (1s)
      • NsqdTCPAddrs:
      • MaxBatch: (100)
  • towebsocket
    • Rules:
      • port:

state blocks

These blocks maintain a state, storing something about the stream of data

  • histogram
    • Rules:
      • Path:
      • Window: (0)
  • count
    • Rules:
      • Window: (0)
  • timeseries
    • Rules:
      • Path:
      • NumSamples: (0)
  • set
    • Rules:
      • Path:
  • movingaverage
    • Rules:
      • Path:
      • Window:

random number blocks

These blocks emit random numbers when polled.

  • zipf
    • Rules:
      • s: (2)
      • v: (5)
      • N: (99)
  • gaussian
    • Rules:
      • StdDev: (1)
      • Mean: (0)
  • poisson
    • Rules:
      • Rate: (1)
Clone this wiki locally