Health Monitor

The Health Monitor object is used to monitor different system components and MongoDB. It creates different monitoring types including: - Performance Counter - Health Calculations - MongoDB Monitoring

that are also historized to help analysis in the event of component failures. To make early failure detection easier, the Health Monitor object automatically creates KPIs for monitoring objects with meaningful thresholds. In addition, a WebStudio view can be accessed for better visualization.

The created Generic Items with performance counter assignment are for selected component performance counters so not all counters will be necessarily represented.

Use Cases

  • Monitoring system components (Core, Connector, Datasource, WebAPIServer) and MongoDB

  • Monitoring limits of Performance Counter, Health Calculations and MongoDB Statistics with pre-defined KPIs

  • Visualize everything in WebStudio // or Visual KPI

  • Monitor uses cases that can be defined by the user

  • Create Health Monitor Reports of your system

Feature Description

MongoDB Monitoring

For each MongoDB connection that can be found in the system, a MongoDB watch item is created. The monitoring covers statistics for databases, collections and the server itself. For MongoDB located at local Core level, the item will be created in the respective component folder.

Use Case Monitoring

With this feature you can assign a custom use case to items that have the HMUsecases table property. This can be done by adding an new row to the table and filling in the desired name and group that should be used by the monitoring. These objects then will have their state monitored (good, bad or disabled). The results of the monitoring will be given to the UseCase watch item and a report (if activated) will be created.

For a step-by-step guide to setting up the health monitor see Health Monitor Setup in the JumpStart on Using the Health Monitor.

Quick Configuration

To create a Health Monitor object for your system, …​

  1. Select the Core object in the I/O Model and right-click on it to open the context menu.

  2. Select Admin  Advanced Functions  Create Health Monitor.

This creates folders named 'Health Monitoring' underneath the Core object and all subordinate Connector and Local Core objects. These folders contain tree structures representing the Performance Counters which are available for this object and its child objects. The Health Monitoring folder for the core contains the 'Health Monitor' object, where health monitoring can be configured and switched on and off.

Starting and Stopping the Health Monitor

On creation the Health Monitor object is active and immediately starts collecting Performance Counter data. To disable the Health Monitor (e.g. for configuration), select the Health Monitor object in the I/O Model and expand the Common compound in the Property Panel. Set the Processing Mode to 'Configuration' to stop health monitoring or to 'Active' to reactivate it.

Health Monitor Options in Detail

Before making any configuration changes, make sure to set the Processing Mode to 'Configuration'. Set it back to 'Active' when all the changes have been made.

The following Options can be configured in the Options compound in the Properties Panel of the Health Monitor object:

  • Inventory Automation: Defines if the objects required for health monitoring will be created automatically in the respective target component.

  • Include disabled Objects: Controls if health monitoring objects will also be created for disabled components.

  • Core Base Path: Defines the folder where all master core based monitoring objects will be created. Note that the Health Monitor object itself can be located in a different folder.

  • Component Base Path: Defines the folder where all component based monitoring objects will be created.

  • Performance Counter-, Health Calculation- and MongoDB Statistics Automation: Controls, if the corresponding health monitoring type will be added to the health.

  • IO Data Items Cleanup: Defines if data items in the IO model will be cleaned up on configuration changes of the monitored components.

  • KPI Model Base Path: Refers to the object (Enterprise, Group or Site) in the KPI model where health monitoring objects will be created. Default is 'Health Monitoring'.

  • KPI Model Automation: Controls if health monitoring objects (Generic, Charts and Tables) will be added to the KPI model. Enabled by default.

  • KPI Server Profile: Refers to the KPI Profile in the access model where all health monitoring dashboards will be created. Default is 'KPI Server'.

  • Create Report Items: Controls if health monitoring report items will be created.

KPI monitoring

On creation of the Health Monitor object, in the Server Model the following structure is created:

-- KPI Server            // the <KPI Server> object
 +-- VisualKPI           // the <KPI Instance> object
   +-- Health Monitoring // the <KPI Profile Group> object
     +-- Health Monitor  // the <KPI Profile> object
       +-- ...           // a <Dashboard> object
       +-- ...           // another <Dashboard> object
       +-- ...           // ...

Also, in the KPI Model a new branch is created, named 'Health Monitoring' (as configured in the KPI Model Base Path property described above). There the 'by technology' folder hosts a tree structure of Generic KPI objects, representing the Performance Counters.

Accessing the Health Monitor Dashboard in WebStudio

Webstudio comes with a built-in dashboard for the Health Monitor. To open this dashboard, open the following URL in your browser, adjusting <hostname_webapi> and <port> to your situation.

http://<hostname_webapi>:<port>/apps/webstudio/?hostname=<hostname_webapi>&port=<port>&lib=syslib.app-webstudio-healthmonitor&func=dashboard_compilation

Object Properties

Common

Object Name

The user-modifiable object name. This name overrides the name which has been supplied by the external system. It must be unique within the collection of objects of the parent object.

Object Description

This is the user-modifiable object description. This text overrides the description which has been supplied by the external system.

Attachments

File attachments stored in MongoDB file store.

Processing Mode

Processing mode of the Health Monitor.

  • Configuration: The Configuration mode (default when object is created) allows to pause the execution of the object, and change its configuration before the automation becomes active.

  • Active: The Active mode turns the objects' automation on.

Managed Inventory

List of managed components.

Performance Counter

The list of performance counters to use for system health monitoriong.

Calculations

The list of calculations to execute when using system health monitoring.

KPI Mapping

Mapping of system health monitor results to GenKPI objects.

KPI Chart Mapping

Mapping of system health monitor results to KPIChart objects.

KPI Table Mapping

Mapping of system health monitor results to KPITable objects.

KPI Dashboard Layout

Configuration of VKPI dashboard layout for system health monitoring.

MongoDB Statistics

List of MongoDB statistics to use for system health monitoring.

Custom Values

List of custom values to calculate/retrieve that shall be included in system health monitoring.

Options

Configuration Options.

Inventory Automation

Defines if the objects required for health monitoring will be created automatically in the respective target component.

Include disabled objects

Defines if the performance counter objects will also be created for disabled objects.

Execution Period

The execution period of the object’s logic or code (i.e. the delay between the end of the last run and start of a new run).

Core Base Path

Path to folder hosting the health monitoring objects at Core level.

Component Base Path

Path to folder hosting the health monitoring objects at Component level.

Performance Counter Automation

Defines if the performance counter objects required for health monitoring will be created automatically.

Health Calculation Automation

Defines if health calculation objects will be created automatically.

MongoDB Statistics Automation

Defines it the objects for MongoDB statistics retrieval shall be created automatically.

IO Data Items Cleanup

Defines if data item in the IO model will be cleaned up on configuration changes of the system health monitoring.

KPI Model Base Path

Path to object in the KPI model hosting the system health monitoring objects.

KPI Model Automation

Defines if the objects required for system health monitoring will be created automatically in the KPI model.

KPI Server Profile

Defines the VisualKPI profile that is hosting the health monitoring dashboards.

KPI Charts Cleanup

Defines if VisualKPI chart objects will be cleaned up on configuration changes of the system health monitoring.

Create Report Items

Defines if the Health Monitor report objects shall be created.

Diagnostics

HealthMonitor Diagnostic Info.

Process State

Shows the current processing state of the object.

Last Result

Result of last execution.

Last Execution (UTC)

Last execution time displayed in UTC.

Last Error

The last error, which occurred in this object.

Last Error Time

The time of the last error, which occurred in this object.

Custom Options

Compound to hold various structures to customize the object and to be read and written to by Lua-Script code or external interfaces.

Custom String

A generic string buffer to be used programmatically for custom purposes.

Custom Properties

This is an extensible set of named strings which can be used programmatically for custom purposes.

Property Name

A custom property name which can be used programmatically.

Property Value

The value of the custom property which can be read and written programmatically.

Custom Tables

This is an extensible set of named tables which can be used programmatically for custom purposes.

Table Name

A custom table name which can be used programmatically.

Table Data

Handles an entire table organized in columns and rows. The data can easily (cut, copy and paste) be exchanged with table-oriented data of other software products, e.g. MS Excel.