Siddhi team is excited to announce the Siddhi runtime and tooling 0.1.0 release.
Siddhi maintains two distributions as Siddhi-Runner and Siddhi-Tooling distribution.
- Siddhi-Runner distribution bundles the Siddhi runtime which runs the Siddhi logic in a production environment.
- Siddhi-Tooling distribution bundles the tooling editor profile which can be used for developing, testing and debugging Siddhi applications before moving to production.
Please refer the Siddhi official documentation for quick start
Try Siddhi Runner & Tooling
Siddhi Runner Distribution
Download the latest released distributions from here
Extract the Siddhi runner distribution.
Unzip the siddhi-runner-x.x.x.zip.
Navigate to the <RUNNER_HOME>/bin directory. Start SiddhiApps with the runner config by executing the following commands from the distribution directory
./bin/runner.sh -Dapps=<siddhi-file> -Dconfig=<config-yaml-file>
bin\runner.bat -Dapps=<siddhi-file> -Dconfig=<config-yaml-file>
Running Multiple SiddhiApps in one runner
To run multiple SiddhiApps in one runtime, have all SiddhiApps in a directory and pass its location through
-Dapps parameter as follows,
"Always use absolute path for SiddhiApps and runner configs."
Providing the absolute path of SiddhiApp file, or directory in
-Dappsparameter, and when providing the Siddhi runner config yaml on
-Dconfigparameter while starting Siddhi runner.
Siddhi Tooling Distribution
Download the latest released distributions from here
- Extract the Siddhi tooling distribution.
- Navigate to the <TOOLING_HOME>/bin directory and issue the following command:
- Access the Editor UI using the following URL.
http://localhost:<EDITOR_PORT>/editor (e.g: http://localhost:9390/editor)
Supported Siddhi Extensions
|execution-json||The siddhi-execution-json extension is an extension to Siddhi that provides a rich set of capabilities to retrieve data from JSONs and inserting/modifying elements in JSONs using Siddhi streams.||2.0.0|
|execution-math||The siddhi-execution-math is an extension to Siddhi, which provides useful mathematical functions that can make your siddhi queries more flexible.||5.0.0|
|execution-regex||The siddhi-execution-regex extension is an extension to Siddhi that provides basic RegEx execution capabilities.||5.0.0|
|execution-string||The siddhi-execution-string is an extension to Siddhi that provides basic string handling capabilities such as con-cat, length, convert to lowercase, and replace all.||5.0.1|
|execution-time||The siddhi-execution-time extension is an extension to Siddhi that provides time related functionality to Siddhi such as getting current time, current date, manipulating/formatting dates and etc.||4.1.0|
|io-cdc||The siddhi-io-cdc extension is an extension to Siddhi. It receives change data from MySQL, MS SQL Server, Postgresql, H2 and Oracle in the key-value format.||2.0.0|
|io-nats||The siddhi-io-nats extension is an extension to Siddhi that can be used to communicate (publish/subscribe) with an instance of nats-streaming server.||2.0.1|
|io-email||The siddhi-io-email extension is an extension to Siddhi that receives and publishes events via email. Using the extension, events can be published through smtp mail server and received through 'pop3' or 'imap' mail serves.||2.0.1|
|io-http||The siddhi-io-http extension is an extension to Siddhi that allows you to receive and publish events via http and https transports and also allow you perform synchronous request and response. This extension works with WSO2 Stream Processor and with standalone Siddhi.||2.0.4|
|io-kafka||The siddhi-io-kafka extension is an extension to Siddhi. This implements siddhi kafka source and sink that can be used to receive events from a kafka cluster and to publish events to a kafka cluster.||5.0.0|
|io-tcp||The siddhi-io-tcp extension is an extension to Siddhi that allows to receive and publish events through TCP.|
|map-binary||The siddhi-map-binary extension is an extension to Siddhi that can be used to convert binary events to/from Siddhi events.||3.0.1|
|map-csv||The siddhi-map-csv extension is an extension to Siddhi that supports mapping incoming events with csv format to a stream at the source, and mapping a stream to csv format events at the sink.||2.0.0|
|map-json||The siddhi-map-json extension is an extension to Siddhi which is used to convert JSON message to/from Siddhi events.||5.0.1|
|map-keyvalue||The siddhi-map-keyvalue extension is an extension to Siddhi that supports mapping incoming events with Key-Value map format to a stream at the source, and mapping a stream to Key-Value map events at the sink.||2.0.0|
|map-text||The siddhi-map-text extension is an extension to Siddhi that supports mapping incoming text messages to a stream at the source, and mapping a stream to text messages at the sink.||2.0.0|
|map-xml||The siddhi-map-xml extension is an extension to Siddhi that supports mapping incoming XML events to a stream at the source, and mapping a stream to XML events at the sink.||5.0.0|
|store-rdbms||The siddhi-store-rdbms extension is an extension to Siddhi that can be used to persist events to an RDBMS instance of the user's choice.||6.0.0|
Tested Operating Systems and JDKs
|JDK Version/s||Operating System/s|
|Oracle JDK 8||Windows 10, Alpine 3.5, Ubuntu 16.04 & 18.04, MacOS High Sierra|
|Open JDK 8||Alpine 3.5, Ubuntu 16.04|
|Oracle JDK 11||Ubuntu 16.04 & 18.04|
|Open JDK 11||Ubuntu 16.04 & 18.04|
- H2 1.4.187
- MySQL 5.5
Issues can be reported using at GitHub Issue Tracker.
Siddhi-Dev Google Group Group is the main Siddhi project discussion forum for developers.
Users can use Siddhi-User Google Group to raise any queries and get some help to achieve their use cases.
StackOverflow is also can be used to get some support and GitHub for issues and code repositories.