Every application is different, so you need to track a diverse range of information to ensure that your applications are functioning properly. For example, for one application, you might need to monitor the ingest streams to ensure that they do not become congested. For others, you need to monitor a set of operator streams to ensure that they are generating tuples successfully.

Each Application Dashboard has a default “Dashboard Filter” applied, called filter_32My Jobs”, which filters information of only the jobs started by the user logged in. This is fairly useful when you need to log into a domain with many jobs and do not want to request information about other user applications unnecessarily. Using filters allows the application dashboard to load and respond much quicker since the console is requesting only a set of jobs from the Streams server. Other ideal dashboard filters can be selected using  job groups, application names or operator tags.

IngestDashboard

Application Focused Dashboard called “IngestDashboard”

How to set dashboard filter:

barchart_32  Visualizations


All the information returned by the dashboard filter, can be displayed in different visualizations contained on a set of cards. These cards can also be customized by choosing the objects displayed within the card. Some of default cards on the Application Dashboard are:

  • Summary.  The summary card displays a counter of streams objects categorized by: jobs health, operators health, streams connection state, PE connection congestion factor and consistent region state.
  • Streams Tree: The streams tree displays the streams objects in hierarchical order.
  • Streams Graph: The streams graph displays a flow graph of the application operators and stream connections.
  • Other visualizations such as Scattered Charts, Bar Charts, Line Charts and Grids can be added to measure system or user defined metrics.

barchart_32  Queries

A query is a criteria run against your Streams domain to produce a meaningful result set of relevant information about your applications. The main goal of a query is to reduce clutter and allow you to focus on specific parts of your applications that need constant monitoring. A query can be used as a dashboard filter, but also it can be reused to create interesting visualizations.

 

Dashboard + Dashboard Filter (Query) = Focused application dashboard

Query + Visualization + Card = Focused visual cues card

 

For example, a query such as “FileSource Operators” can define a rule with a condition where the “operator kind” contains “FileSource”. If you set this query with a operators line chart, you can notice that the visualization metric is focused on only the FileSource operators. This comes very useful when you work on a domain with many operators processing information at different rates.

FileSource operators query chart

Adding more conditions to each rule will make the query result more specific. For example, given a query scoped to find all the “FileSource” operators from all the sample jobs started by Adriana. By editing the query above, we can add two more conditions: “job name” starts with “sample” and “job started by user” contains “adriana”. This can be useful when visualizations can present information from a broad overview to a more fine level of detail.

ManyConditionsQuery

  • Adding more rules can provide more generalization to the query. Therefore either rule can bring any result, expanding the number of objects returned.

ManyRulesQuery

How to add card and edit its query:

 

Click on the button to deep dive on the Application Dashboards tutorial :

Application Dashboards Tutorial

 

Join The Discussion