Monitors can be added to a snapshot of a business model to provide on-going review of the model’s holistic performance and adherence to KPI’s.
1. First, make sure the monitor you want to associate with a business model is imported into ModelOp Center and a snapshot has been created. The monitors list can be accessed by clicking on the “Monitors” main menu item. The monitors will be listed like below:
2. Next, in the Model Snapshot page, click on the “Monitoring” tab. Click the “+ Add” button and select “Monitors” from the drop down.
3. The monitoring wizard is opened, which walks a user through adding a monitor to a business model. First, select the specific monitoring model that the user would like to add:
4. Next, select the specific Snapshot (version) of the monitoring model to be used. As background, ModelOp Center versions and manages monitoring models in the same was as business models, allowing for reusability and auditability of monitors as well.
5. Inputs Assets. Add input assets for the monitoring model to consume. Input assets can be URLs to S3 or HDFS files, SQL assets, directly uploaded files, or assets that are attached to the business model.
Note: click the “Learn More” drop down to review more information about the Monitor, including the required inputs, the output structure, and other details.
6. Thresholds. Optionally, thresholds can be added to the Monitor though the use of a decision table (DMN file). When the monitoring job is run, the DMN file will be examined by an MLC to determine whether the business model is outside of specification and an alert notification should be sent. The user can select an existing DMN or choose to generate a new set of thresholds.
If the user selects to generate a DMN threshold file they can use the DMN builder to construct one:
If the user selects a DMN from the existing business model, they also have the option to 'edit' the file.
This will open the DMN builder with the selected file as a base. Any modifications done to this file through the DMN builder will not alter the original and only be saved to the monitor:
7. Schedule. Optionally, one or more schedules can be set to launch monitoring jobs automatically. These schedules can fire a signal to trigger an MLC to create a monitoring metrics job. Additionally, ModelOp Center supports enterprise schedulers such as Control-M, AutoSys and SSIS via API calls.
8. Review. Review the details of the monitor, and if satisfied, click “Save.”
9. The monitor will appear under the “Configured Monitors and Associated Models” on the business model’s snapshot page.
From here, the monitor can be edited, as required, via the same Monitor Wizard.
Using Dynamic Parameters for Monitoring Setup
For obtaining data from certain data systems (like SQL or REST-based systems), it can be useful to specify parameters that are dynamically set during monitoring execution. The most common example would be for setting time windows, e.g. “obtain all data over the last week.” The below approach outlines how to set up a Monitor to use parameters such as current day, current week, etc. Please note that a user can customize the specific parameter values within a Model Life Cycle.
Example Steps to Use Parameters for Monitoring
Create a RestAsset (or SQLAsset) and now the Query Params or Form Data values can have some placeholder logic (using standard
${FOO}
notation)Next the user will create a monitor using that asset and just select the existing RestAsset as input for the job
In the Schedule step of the Wizard, we will add signal variables that match the placeholder name used in the Asset params (
FOO
above). Note that you can pass the optional variableASSET_REPALCE_FORMAT
to specify a date format for the replacement, otherwise default is yyyy-MM-dd).In the RunAssociatedModelMetrics.bpmn (both Jira and Service Now), there is a script to replace the placeholders of all the Assets that reference a variable using the notation above
${FOO}
. The value of such variables will be one of the following pre-loaded instance variables:${QUARTER_START}
${QUARTER_END}
${MONTH_START}
${MONTH_END}
${WEEK_START}
${WEEK_END}
${TODAY} or alias ${CURRENT_DAY}
Finally the engine will query with the replaced value (last request of the image shows the actual Today and Quarter End dates passed and get the desired dynamic response.
Next Article: Operational Monitoring >