Overview of baseline message flow in UIM
search cancel

Overview of baseline message flow in UIM

book

Article ID: 275948

calendar_today

Updated On:

Products

DX Unified Infrastructure Management (Nimsoft / UIM)

Issue/Introduction

UIM Currently (November 2023 and for the foreseeable future) has two different workflows for the generation of metric baselines.  This document will explain both methods and describe their differences and similarities.

Environment

UIM 20.x configured with Admin Console or using MCS Profiles

Resolution

Workflow 1: Admin Console/command-line and the baseline_engine probe

When probes are configured via the Admin Console GUI interface or using the baseline_engine command-line the workflow is as follows:

1. When 'Compute Baseline' is checked in a profile in Admin Console, or when the baseline_engine commands are used to enable baselines for a particular metric, a message is sent on the UIM message bus with the subject "BASELINE_CONFIG" on the local hub where the targeted baseline_engine lives (e.g. the hub that the robot being targeted reports to.)
2. The baseline_engine probe on that hub picks up this message and adds the metric_id to a list of metrics that it is watching for.   It listens on the bus to the QOS_MESSAGE subject and calculates baselines for those metrics that have a matching ID.
3. Once per hour, at the top of the hour, the baseline_engine submits a QOS_BASELINE message to the bus which in turn will be forwarded to the primary hub for processing and insertion to the database. (Note: For this reason you must define a queue to move the QOS_BASELINE subject from your remote hubs to the primary.  This can be combined with other queues e.g. QOS_MESSAGE/QOS_DEFINITION or added separately.)

Workflow 2: MCS Enhanced Profiles and the plugin_metric.cfg

1. When "Calculate Baseline" is selected in an MCS Enhanced Profile, this profile is then distributed to the appropriate robot(s) by the mon_config_service probe.
2. As part of that deployment, a file located at (Installation Location)/nimsoft/plugins/plugin_metric/plugin_metric.cfg is updated
3. The spooler on the robot uses this file to determine what metrics to send and whether to also calculate and submit baseline messages.
4. Once per hour, at the top of the hour, the spooler submits a QOS_BASELINE message with the hourly baseline for that metric.   This is in turn forwarded to the primary hub for processing and insertion to the database.  (Note: For this reason you must define a queue to move the QOS_BASELINE subject from your remote hubs to the primary.  This can be combined with other queues e.g. QOS_MESSAGE/QOS_DEFINITION or added separately.)

 

When using Workflow #1, the baseline_engine is required to be present on each remote hub.  (When configuring probes in Admin Console, the "ppm" probe is required on each hub -- and baseline_engine and prediction_engine are automatically installed along with it.)

When using Workflow #2 it is not necessary to have the baseline_engine probe on the hub (other than the default installation on the primary hub), as the calculations are handled by the local robot/spooler and not the baseline_engine itself.  

It is possible to mix these workflows - an environment can have some baselines enabled with MCS and some enabled with Admin Console/command-line and they should not interfere with each other (although it is not advisable to use both methods on the same metric as this may cause duplication of data.)