5.5 Virtual Services
Concept of a Virtual Service
Virtual services are designed to monitor the operational quality of a technical system and the signals it processes. They allow you to quickly identify which node within the system has encountered a problem.
Figure 146. Example of virtual service visualization
A virtual service provides a set of visualization methods for creating combined metrics — metrics composed from other metrics — and for displaying supplementary information about metric values. In essence, a virtual service is a user-constructed "combined metric" built using the virtual service editor. This combined metric is called the virtual service status. Once created, the virtual service is placed on a workspace and monitored via the Virtual service widget (see Section 12.4.6).
Tip
If you only need to visualize the relationships between monitoring objects without requiring combined metrics, consider using Schemes instead (see Section 5.6).
Status and Traffic Light Visualization
The virtual service status is represented as a traffic light:
- 🟢 Green — no issues detected.
- 🟡 Yellow — potential issue, attention advised.
- 🔴 Red — alarm condition.
The meaning of each color value is defined by the user when building the metric. The status is calculated from the statuses of the monitoring objects included in the virtual service using processing functions.
Virtual Service as a Graph
A virtual service is represented as a directed graph ("tree") whose nodes are:
- Status sources — monitoring objects.
- Status processing functions — logic applied to the incoming statuses.
- Status receiver — the virtual service itself (the traffic light).
Connecting lines define the flow of status information through the processing chain.
Example 1 — Transport stream: A virtual service representing an MPEG TS transport stream could calculate its overall status as the logical OR of all component statuses. If any elementary stream has a "red" status, the entire transport stream shows "red."
Example 2 — Television headend: A virtual service representing a full digital TV headend could aggregate the statuses of the multiplexer, hardware, and all processed signals. The multiplexer status could be the logical sum of server hardware and multiplexed signal statuses, while the headend's overall status would combine all device statuses.
Figure 147. Example of a simple virtual service diagram (two sources, one function, one receiver)
Processing functions and monitoring objects can be cascaded to build complex multi-level calculations.
Figure 148. Example of a virtual service diagram with cascading
Virtual Services Configuration Screen
The virtual services configuration screen is used to create, edit, and delete virtual services.
To access it, go to Configuration → Monitoring objects & virtual services → Virtual services.
Figure 149. Starting the Virtual services editor
Figure 150. List of Virtual services
The screen consists of three panels:
- List of virtual services (left) — all created virtual services.
- Preview — visualization preview of the selected virtual service.
- Additional info — textual description of the selected service's configuration.
The list presents virtual services in a table with the following columns:
| Column | Description |
|---|---|
| Name | User-defined name |
| Tags | Tags associated with the service |
| Groups | Groups that have access to the service |
| Description | Free-form description |
To edit a virtual service, click its name. To create a new one, click New virtual service. Both operations open the Virtual services editor.
Virtual Services Editor
The Virtual services editor is used to configure the selected virtual service.
When creating a new virtual service, you can add existing monitoring objects or create new ones directly within the editor — prior creation of monitoring objects is not required.
The editor (Figure 151) consists of a working area with a coordinate grid, a control toolbar, and element items. A Virtual service object (the traffic light) is always present in the working area.
Figure 151. Virtual services editor
Working with Elements
Elements appear as geometric shapes on the grid. Hovering over a shape reveals a local control menu (Figure 152).
Figure 152. Element management menu
To add an element — drag it from the element panel and drop it onto the grid. A configuration window opens for elements that require setup.
Inputs and outputs — elements have inputs on the left and outputs on the right, marked with circles. Inputs receive status information; outputs send it. To connect elements, drag from one element's output circle to another's input circle. Note that the virtual service (traffic light) has inputs only.
To delete an element — click
in its local menu.
To configure an element — click
in its local menu. Available only for configurable elements.
Copy mode (Info Metrics and Info Alarms only) — click
to create a copy of the
current element's settings for a different monitoring object. A new element is created
for the selected object.
Element Reference
Object
Adds a monitoring object to the virtual service. Has one input and one output.
Configuration window fields:
| Field | Description |
|---|---|
| Virtual service object name, type and node | Select the monitoring object to add. When multiple objects are selected, they are stacked vertically on the grid. Click to create a new monitoring object (see Section 5.1). When an object is added to a virtual service, the service is listed in the object's Defaults tab (Figure 154) |
| Widget size | Graphical size of the element: Small, Medium, or Large |
| Font size | Font size for the element label |
Figure 154. Virtual service reference in the monitoring object configuration
Splitter
A processing function that branches an input status to multiple outputs. The status from the input can be sent to as many outputs as needed (Figure 155). No configuration.
MUX (Multiplexer)
A processing function that computes the output status from multiple input statuses using logical OR. Requires more than one input status (Figure 155). No configuration.
Figure 155. Example of using a Splitter and MUX
Changeover
A processing function that calculates the arithmetic mean of the input statuses. Useful for indicating that one of several redundant connections has failed — without the overall status going fully red.
Example (Figure 156): Two transport stream statuses feed into the Changeover. If one stream encounters an emergency, the virtual service status shows "yellow" rather than "red" — signaling that the service is still running, but one backup line needs attention.
Figure 156. Example of using the Changeover
Text
Creates a text comment displayed during virtual service visualization. When creating the element, enter the text and select the font size.
Divider
Creates a dashed line for visually separating the virtual service into sections — for example, by geographic location. Select either a vertical or horizontal line when creating.
Info Metrics
Creates an information panel in the virtual service field showing current metric values from a monitoring object (Figure 157). Useful for displaying metrics that contribute to status calculations.
Figure 157. Example of an Info Metrics element
Figure 158. Info Metrics configuration window
Configuration window fields:
| Field | Description |
|---|---|
| Monitoring object | Monitoring object whose metrics to display |
| Widget size | Graphical size: Small, Medium, or Large |
| Font size | Font size for the element text |
| Analyzer | Analyzer providing the metric values |
| Measures | List of metrics to display. Click Add all measures to add all metrics from the selected analyzer, or Add measure to add them individually |
| Hide header | Hides the widget header if checked |
Info Alarms
Creates an information panel showing current alerts from a monitoring object, sorted by time with the most recent at the top.
Figure 159. Info Alarms element configuration window
Configuration window fields:
| Field | Description |
|---|---|
| Monitoring object | Monitoring object whose alerts to display |
| Widget size | Graphical size: Small, Medium, or Large |
| Font size | Font size for the element text |
| Alarm counts to show | Number of current alerts (lines) to display |
| Hide header | Hides the widget header if checked |
Image
Places an image within the virtual service field to improve diagram readability or serve other visual purposes.
Figure 160. Image element configuration window
Configuration window fields:
| Field | Description |
|---|---|
| Image | Upload a new image file or select one already uploaded |
| Image variant | Fit (original size), Fill (crop to fill), or Stretch (fill the entire widget) |
| Background color | Widget background color |
| Opacity | Image transparency |
| Widget size | Graphical size: Small, Medium, or Large |
Command Executor
Launches a script or multiple scripts from the MultiProbe system directory:
C:\Program Files\Stream Labs\MultiProbe\Stream Labs MP Command ExecutorService\Scripts
Figure 161. Command Executor configuration window
Configuration window fields:
| Field | Description |
|---|---|
| Name | Element name |
| Confirmation mode | Confirmation of actions — launch with prior confirmation; Without confirmation — launch immediately |
| Widget size | Graphical size: Small, Medium, or Large |
| Font size | Font size for element text |
| Background color | Button background color |
| Font color | Font color for the element name |
| Opacity | Element transparency |
| Commands | List of scripts to execute |
The Commands field is populated by selecting scripts from the list using the
checkbox next to each script name. To select all scripts at once, use
Select all options. To remove a script from the selection, click
next to its name.
Visualization of the Virtual Service
The configured virtual service can be visualized in two ways:
- Click the
button in the
virtual service editor (Figure 162). - Add the Virtual service widget to a workspace from the Alarms section of the widget list (Figure 163). Workspace configuration is described in Section 6.1. Widget details are provided in Section 12.4.6.
A miniature preview of the visualization is always visible in the lower-right corner of the editor.
Figure 162. Visualization button in the virtual service editor
Figure 163. Virtual service widget in the workspace widget list
to create a new monitoring object (see 