Skip to main content

Ens.BusinessMetric

class Ens.BusinessMetric extends Ens.BusinessService

Ensemble Metric Service
Updates a defined set of Business Metrics.

Property Inventory

Method Inventory

Parameters

parameter ADAPTER = Ens.InboundAdapter;
Use an adapter to make sure we get invoked.

Properties

property %rangeLower as Ens.DataType.Metric;
Set this property in OnCalculateMetrics in order to provide a default rangeLower value for any dashboard meters connected to this property.
Property methods: %rangeLowerDisplayToLogical(), %rangeLowerGet(), %rangeLowerIsValid(), %rangeLowerLink(), %rangeLowerLogicalToDisplay(), %rangeLowerNormalize(), %rangeLowerPoints(), %rangeLowerRangeLower(), %rangeLowerRangeUpper(), %rangeLowerSet(), %rangeLowerThresholdLower(), %rangeLowerThresholdUpper(), %rangeLowerUnits()
property %rangeUpper as Ens.DataType.Metric;
Set this property in OnCalculateMetrics in order to provide a default rangeUpper value for any dashboard meters connected to this property.
Property methods: %rangeUpperDisplayToLogical(), %rangeUpperGet(), %rangeUpperIsValid(), %rangeUpperLink(), %rangeUpperLogicalToDisplay(), %rangeUpperNormalize(), %rangeUpperPoints(), %rangeUpperRangeLower(), %rangeUpperRangeUpper(), %rangeUpperSet(), %rangeUpperThresholdLower(), %rangeUpperThresholdUpper(), %rangeUpperUnits()
property %thresholdLower as Ens.DataType.Metric;
Set this property in OnCalculateMetrics in order to provide a default thresholdLower value for any dashboard meters connected to this property.
Property methods: %thresholdLowerDisplayToLogical(), %thresholdLowerGet(), %thresholdLowerIsValid(), %thresholdLowerLink(), %thresholdLowerLogicalToDisplay(), %thresholdLowerNormalize(), %thresholdLowerPoints(), %thresholdLowerRangeLower(), %thresholdLowerRangeUpper(), %thresholdLowerSet(), %thresholdLowerThresholdLower(), %thresholdLowerThresholdUpper(), %thresholdLowerUnits()
property %thresholdUpper as Ens.DataType.Metric;
Set this property in OnCalculateMetrics in order to provide a default thresholdUpper value for any dashboard meters connected to this property.
Property methods: %thresholdUpperDisplayToLogical(), %thresholdUpperGet(), %thresholdUpperIsValid(), %thresholdUpperLink(), %thresholdUpperLogicalToDisplay(), %thresholdUpperNormalize(), %thresholdUpperPoints(), %thresholdUpperRangeLower(), %thresholdUpperRangeUpper(), %thresholdUpperSet(), %thresholdUpperThresholdLower(), %thresholdUpperThresholdUpper(), %thresholdUpperUnits()

Methods

classmethod %OnDashboardAction(pAction As %String, pContext As %ZEN.proxyObject, pConfigName As %String) as %Status
This callback is invoked from a dashboard when an action defined by this metric is invoked.
pAction is the logical name of the action.
pContext is a proxy object that contains various information about the action and provides a way for the method to return information to the client. Refer to DeepSee KPIs for more information.
classmethod %OnGetActionList(ByRef pActions As %List, pConfigName As %String) as %Status
Callback to get a list of dashboard actions for this Business Metric. Items returned by this method are available as actions in the Dashboard editor. This takes the form:
pActions($I(pActions))=$LB(name,caption)
Refer to DeepSee KPIs for more information.
classmethod CalculateMetricsOnDemand(pConfigItemName As %String, pInstances As %String = "") as %Status
Use this ClassMethod to calculate business metrics on demand instead of on a refresh interval. You must specify a Config Item name and a Metric Instance name or comma-separated list of Instance names to calculate. If you do not specify any Instances, all Instances you have defined in the MetricInstances query for your Metrics class will be calculated. To use this method, your production should be running and should contain a Config Item for the metric with the Config Item name you specify and with its PoolSize = 0.
final classmethod GetMetric(pMetric As %String, pProperty As %String, pSubNode As %String = "", pInstance As %String = 1) as %String
Public API to directly get the value of a metric.
pMetric is the configuration name of the Business Metric class.
pProperty is the name of the metric property.
pSubNode (optional) is subscript to use for multidimensional properties.
pInstance (optional) is the metric instance value (use 1).
Returns the value for the metric (for multidimensional metrics, value at top or subnode is returned).
method OnCalculateMetrics() as %Status
Calculate and update the set of metrics for this class This is overwritten by subclasses
abstract classmethod OnGetInstances(ByRef pInstSet As %String) as %Status
This user callback method can be defined within a subclass in order to provide a set of instances for this Business Metric. In this case, metrics will be calculated for every instance (that is, OnCalculateMetric, will be called for every instance).
The set of instances is returned via the pInstSet array which is of the form:
pInstSet(n) = InstanceName
To provide a data-driven set of metric instances, you can also define a class query called MetricInstances; The first column returned by this query is the instance name.
If both the query and this method are defined, the query is called first and the results are passed to this method.
method OnInit() as %Status
Inherited description: This user callback method is called via initConfig() from %OnNew() or in the case of SOAP Services from OnPreSOAP()
method OnProcessInput(pInput As %Library.RegisteredObject, Output pOutput As %Library.RegisteredObject, ByRef pHint As %Library.String) as %Status
Inherited description: Override this method to process incoming data. Do not call SendRequestSync/Async() from outside this method (e.g. in a SOAP Service or a CSP page).
classmethod OnProductionStart(pConfigName As %String) as %Status
Inherited description: This user callback method is called when the system is being started
classmethod OnProductionStop(pConfigName As %String) as %Status
Inherited description: This user callback method is called when the system is being stopped
classmethod OnStart(pConfigName As %String) as %Status
classmethod OnStop(pConfigName As %String) as %Status
method OnTearDown() as %Status
Inherited description: This user callback method is called from %OnClose()
final classmethod SetMetric(pMetric As %String, pProperty As %String, pValue As %String, pInstance As %String = 1) as %Status
Public API to directly set the value of a metric.
pMetric is the configuration name of the Business Metric class.
pProperty is the name of the metric property.
pValue is the new value for the metric. You can pass an array by reference if you wish to set a multidimensional metric.
pInstance (optional) is the metric instance value (use 1).

Inherited Members

Inherited Properties

Inherited Methods

FeedbackOpens in a new tab