Skip to content

Viewing General SI Statistics

Before you begin:

General Statistics dashboard

The following are the various dashboards that correspond to WSO2 SI general statistics.

  • Siddhi Overall Statistics

    This displays the overall statistics related to your Streaming Integrator instance and the Siddhi components of the Siddhi applications that are currently deployed in it.

  • Siddhi Server Statistics

    This displays statistics related to the Siddhi server.

  • Siddhi Stream Statistics

    This displays statistics related to streams in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi Source Statistics

    This displays statistics related to sources in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi Sink Statistics

    This displays statistics related to sinks in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi Query Statistics

    This displays statistics related to queries in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi Window Statistics

    This displays statistics related to windows in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi Trigger Statistics

    This displays statistics related to triggers in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi Table Statistics

    This displays statistics related to tables in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi Aggregation Statistics

    This displays statistics related to aggregations in the Siddhi applications currently deployed in your WSO2 Streaming Integrator server.

  • Siddhi On Demand Query Statistics

    This displays statistics related to on-demand-queries in your WSO2 Streaming Integrator server.

The following dashboards are linked to the Siddhi overall statistics dashboard that represents the Siddhi components and their statistics. The Siddhi Grafana Dashboard depicts the memory, latency, and throughput statistics for the Siddhi components as follows.

No. Element Memory Latency Throughput
01 Stream - - ✔️
02 Query ✔️ ✔️ -
03 Source - - ✔️
04 Sink - - ✔️
05 Source Mapper - ✔️ -
06 Sink Mapper - ✔️ -
07 Table - ✔️ ✔️
08 Window ✔️ ✔️ ✔️
09 Aggregation ✔️ ✔️ ✔️
10 Trigger - - ✔️
11 On-Demand Query - ✔️ -

The following information is displayed in the Siddhi Overall Statistics dashboard, which corresponds to the SI general statistics.

Servers Up/Down

Servers up/down

This indicates the number of active servers against time. When a new server is started, it is indicated by a vertical line. You can move the cursor over this vertical line to check the host and port at which the new active server is running.

This also provides a link to the Siddhi Server Statistics dashboard to view server statistics.

Purpose

This allows you to identify the following:

  • The times at which a specific server started and stopped.

  • The duration of time for which a specific server was active.

  • The number of servers that were active at a specific time.

Recommended action

Check the throughput, system load average, memory usage, CPU usage etc., for the time periods during which a specific server/combination of servers was active in order to evaluate server performance.

Siddhi App Count

Siddhi app count

This indicates the total number of Siddhi applications deployed in the currently active servers.

Purpose

This allows you to get an overall understanding of the level of activity carried out by the currently active servers.

Recommended action

If the Siddhi application count is relatively high, you can check the throughput for each Siddhi application to identify the Siddhi applications that you can remove from your Streaming Integrator deployment to reduce the system overhead. To do this, you can filter statistics for each individual Siddhi application in the following dashboards:

- Siddhi Stream Statistics
- Siddhi Source Statistics
- Siddhi Sink Statistics
- Siddhi Query Statistics
- Siddhi Window Statistics
- Siddhi Trigger Statistics
- Siddhi Table Statistics
- Siddhi Aggregation Statistics
- Siddhi On Demand Query Statistics

Server Statistics Summary Table

Server statistics summary

This lists the currently active Streaming Integrator servers and displays the following for each server:

  • The total events received by the server.
  • The system load average.
  • The total memory used by each server.

Purpose

To evaluate the performance of each server as follows:

  • By analyzing the efficiency of the server by comparing its events received with the overhead it incurs in terms of the system load average and the memory used.
  • By comparing the events received, the system load average, and the memory usage of each server with that of other servers.

Recommended action

Once you analyze the performance of each server, you can make changes to your Streaming Integrator deployment to use server resources in a more optimum manner (e.g., by removing low performing servers, adding better performing servers, etc.)

Overall Throughput

Overall throughput

This shows the overall throughput of your current Streaming Integrator deployment.

Purpose

To monitor the overall throughput and evaluate it against other statistics such as the system load average, memory used, the number of Siddhi applications deployed in the system, etc.

Recommended action

Determine whether the overall throughput of your Streaming Integrator server is sufficient based on the system resources allocated, and identify ways in which you can improve it (e.g., reducing Siddhi elements that are deployed, but do not generate a sufficient throughput, making adjustments to the system resources allocated, etc.)

System Load Average

System load average

This shows the average system load of your current Streaming Integrator deployment.

Purpose

To monitor the system load average and compare it with other statistics such as the overall throughput, memory used, the number of Siddhi applications deployed in the system etc. and take appropriate measures to reduce it if it is too high, and to optimize the system better if it is relatively low.

Recommended action

If the system load average is too high, you can take appropriate measures to reduce it (by adding more system resources or by identifying Siddhi applications/elements generating a low throughput that you can remove). If the system load average is too low, you can find ways to optimize it (e.g., reducing the system resources allocated, etc.)

CPU Usage

CPU usage

This shows the CPU usage of your current Streaming Integrator deployment.

Purpose

To monitor the CPU usage of your current Streaming Integrator deployment and to identify scenarios where you may need to make changes to the CPU resource allocation.

Recommended action

If there is a spike in the CPU usage, you can identify whether you need to allocate more CPU resources to your deployment or redeploy some of the Siddhi elements with high throughputs to a different Streaming Integrator deployment.

Similarly, if there is a fall in CPU usage, you can determine whether some of the CPU resources can be removed from the WSO2 Streaming Integrator deployment.

Memory Usage

Memory usage

This shows the memory usage of your current Streaming Integrator deployment and to identify scenarios where you may need to make changes to the memory allocation.

Purpose

To monitor the memory usage of your Streaming Integrator deployment and allocate more memory when needed.

Recommended action

If there is a spike in the memory usage, you can identify whether you need to allocate more memory resources to your deployment or redeploy some of the Siddhi elements with high throughputs to a different Streaming Integrator deployment.

Similarly, if there is a fall in memory usage, you can determine whether some of the memory resources can be removed from the WSO2 Streaming Integrator deployment.

Thread Count

Thread Count

This shows the number of JVM (Java Virtual Machine) threads that are currently active.

Purpose

You can use these statistics to profile your JVM.

Threads Blocked

Threads Blocked

This shows the number of JVM threads that are currently blocked.

Purpose

You can use these statistics to profile your JVM.

Memory Heap Used

Memory Heap Used

This shows the JVM memory heap that is currently consumed by your Streaming Integrator deployment.

Purpose

You can evaluate the performance of your Streaming Integrator servers based on the memory heap usage.

File Descriptors Open

The number of JVM file descriptors that are currently open.

File Descriptors Open

Stream Statistics

Stream Statistics

This indicates the following:

  • The complete list of streams in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The throughput of each stream listed.

  • The total stream count.

The Stream Statistics widget also provides a link to open the Siddhi Stream Statistics dashboard, where you can view stream statistics.

Purpose

This allows you to monitor each stream in your Streaming Integrator deployment and identify the streams that generate a lot of activity.

Recommended action

Filter stream statistics for each Siddhi application to identify active Siddhi applications. You can also identify streams that are duplicated in different Siddhi applications and merge such Siddhi applications if possible to reduce system overhead.

Query Statistics

Query Statistics

This indicates the following:

  • The complete list of queries in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The latency of each query that is listed.

  • The total query count.

The Query Statistics widget also provides a link to the Siddhi Query Statistics dashboard where you can view query statistics.

Purpose

This allows you to monitor each query in your WSO2 Streaming Integrator deployment and identify the main queries to be reviewed in order to reduce the overall latency.

Recommended action

Identify queries with high latency and review them to use the Siddhi logic in a more efficient manner. You can also identify queries that are duplicated in different Siddhi applications and merge such Siddhi applications if possible to reduce system overhead.

Source and Source Mapper Statistics

Source and Source Mapper Statistics

This indicates the following:

  • The complete list of sources in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The throughput of each source that is listed.

  • The total source count in all the Siddhi applications you have selected to monitor.

The Source and Source Mapper Statistics widget also provides a link to the Siddhi Source Statistics dashboard where you can view source statistics.

Purpose

To observe the performance of each source in terms of throughput and latency, and understand its impact on the overall performance of your Siddhi application deployment.

Recommended action

  • Identify sources with high latency and take corrective action to reduce the latency (e.g., if it is a Kafka source, check whether the Kafka server is functioning properly).

  • Observe the throughput of each source and allocate resources in an optimum manner. e.g., If an HTTP source receives a high volume of events, make sure that sufficient memory and CPU resources are allocated to the relevant server.

Sink Statistics

Sink Statistics

This indicates the following:

  • The complete list of sinks in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The throughput of each sink that is listed.

  • The total sink count in all the Siddhi applications you have selected to monitor.

The Sink Statistics widget also provides a link to the Siddhi Sink Statistics dashboard where you can view sink statistics.

Purpose

To monitor the amount of data published by your WSO2 Streaming Integrator deployment to different destinations, brokers, files, databases and cloud storages.

Recommended action

  • Optimize the allocation of resources based on the throughput of each sink. e.g., If a high volume of output events are saved in files via file sinks, allocate sufficient memory in the CPU where the files are saved.

  • If a sink has a high latency at specific time intervals, identify the possible reason (e.g., server unavailability during specific times). If the latency of a sink is consistently low, optimize the resource allocation (e.g., allocate more CPU cores to the relevant server).

Table Statistics

Table Statistics

This indicates the following:

  • The complete list of tables in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The throughput of each table that is listed.

  • The total table count in all the Siddhi applications you have selected to monitor.

The Table Statistics widget also provides a link to the Siddhi Table Statistics dashboard where you can view table statistics.

Purpose

To monitor the tables defined in your WSO2 Streaming Integrator deployment and assessing the extent to which each table is used.

Recommended action

  • Ensure that system resources are allocated in an optimum manner. e.g., Allocate more memory to servers in which the databases with tables that have a high throughput are run.

  • When tables have a high throughput, take action to secure them better to ensure that the data is protected.

Window Statistics

Window Statistics

This indicates the following:

  • The complete list of windows in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The throughput of each window listed.

  • The total window count in all the Siddhi applications you have selected to monitor.

The Window Statistics widget also provides a link to the Siddhi Window Statistics dashboard where you can view window statistics.

Purpose

To monitor the windows defined in your WSO2 Streaming Integrator deployment and assessing the extent to which each window is used.

Aggregation Statistics

Aggregation Statistics

This indicates the following:

  • The complete list of aggregations in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The throughput of each aggregation that is listed.

  • The total aggregation count in all the Siddhi applications you have selected to monitor.

The Aggregation Statistics widget also provides a link to the Siddhi Aggregation Statistics dashboard where you can view aggregation statistics.

Purpose

To monitor the aggregations defined in your WSO2 Streaming Integrator deployment and assessing the extent to which each aggregation is used.

Trigger Statistics

Trigger Statistics

This indicates the following:

  • The complete list of triggers in all the Siddhi applications that you are monitoring in your Streaming Integrator deployment.

  • The throughput of each trigger that is listed.

  • The total trigger count in all the Siddhi applications you have selected to monitor.

The Trigger Statistics widget also provides a link to the Siddhi Trigger Statistics dashboard where you can view trigger statistics.

Purpose

To monitor the triggers defined in your WSO2 Streaming Integrator deployment and assessing the extent to which each trigger is used.

On Demand Query Statistics

On Demand Query Statistics

This indicates the following:

  • The complete list of on demand queries you have carried out via REST API for the Siddhi applications you have selected to monitor.

  • The throughput of each on-demand query that is listed.

  • The total on-demand query count.

The On-Demand Query Statistics widget also provides a link to the Siddhi On-Demand Query Statistics dashboard where you can view on-demand query statistics.

Purpose

To monitor the on-demand queries defined in your WSO2 Streaming Integrator deployment and assessing the extent to which each on-demand query is used.