Calculate Real-time Metrics

This handler (com.rierino.handler.siddhi.JsonSiddhiEventHandler) provides ability to build real-time intelligence and CEP capabilities using Siddhi library.

Handler Parameters

Parameter
Definition
Example
Default

dataflow.state

Name of the state manager with dataflow configurations

dataflow

-

dataflow.ids

Comma separated list of dataflow ids to run on this Siddhi instance

session_dna,customer_dna

-

partition.stream

Stream, from which the data partition information should be received

sessionq

-

dataflow.store.system

Name of the system to store Siddhi persistence data

hdfs_default

-

dataflow.local.dir

Local directory to store interim Siddhi persistence data

/tmp

java.io.tmpdir

Example Siddhi Handler Definition (Can be Imported on Element Screen)

This handler requires the following dependency added to deployment contents:

implementation (group:'com.rierino.custom', name: 'siddhi', version:"${rierinoVersion}")

Actions

Get / GetRT

Returns stored real-time data for a given id from Siddhi tables. Event metadata fields applicable for this action are as follows:

Field
Definition
Example
Default

Domain

Name of the Siddhi table to query on

session_latest

-

Input Element

Json path for the input in request event payload

basket

-

Output Element

Json path for the output in response event payload

basket

-

With event metadata parameters as:

Parameter
Definition
Example
Default

Output Pattern

JMESPath pattern to apply on data output, before returning response

{totalPrice:basket.totalPrice}

-

Dataflow

Id of the dataflow from which data will be received

session_dna

-

Id Field

Name of the id field to query on Siddhi table

sessionid

id

Id Path

Json path for the id field in input element

session.id

id

chevron-rightExamplehashtag

Input

Event Metadata

GetQuery / GetQueryRT

Returns stored real-time data for a given id from Siddhi tables. Event metadata fields applicable for this action are as follows:

Field
Definition
Example
Default

Input Element

Json path for the input in request event payload

basket

-

Output Element

Json path for the output in response event payload

product

-

With event metadata parameters as:

Parameter
Definition
Example
Default

Output Pattern

JMESPath pattern to apply on data output, before returning response

{id:id, name:data.name, description:data.description}

-

Dataflow

Id of the dataflow from which data will be received

session_dna

-

Query Id

Id of the query to execute

product_search_0001

-

Query Name

Name of the query to execute

Product Search

-

Query Json

Full Json representation of query to execute

-

-

chevron-rightExamplehashtag

Input

Event Metadata

Roles

processRole

Passes a Json object to Siddhi, mapping it to a source stream across all data flows with a matching input, which triggers real-time update of metric calculations.

Last updated