abstract class Ens.Activity.Operation.Base
extends Ens.BusinessOperation
This is a Business Operation class.
parameter SETTINGS = "RecordStatsInterval,SAMOnly:Additional";
List of properties can be set as settings in the configuration file
format is a comma separated list of property names
property FailureTimeout
as %Numeric(MINVAL=-1) [ InitialExpression = -1 ];
How long to keep retrying before giving up and returning an error code.
-1 means never give up.
property RecordStatsInterval
as %Numeric [ InitialExpression = 60 ];
How frequently the activity statistics should be moved into permanent storage.
0 means do not check. Default is 60 seconds.
property SAMDefinitionClass
as %String [ InitialExpression = "Ens.SAM.SensorDefinitions" ];
Class that contains the XData JSON definition
property SAMDefinitionXData
as %String [ InitialExpression = "EnsActivityOperationBase" ];
XData JSON definition name
property SAMOnly
as %Boolean [ InitialExpression = 0 ];
If System Alert and Monitoring for interoperability is enabled then
provide statistics for SAM only and not also for persistent tables.
Default is to store in persistent tables as well.
method OnAddActivity(pStatsCategory As %String = "SC", pDays, pSeconds, pLocalTime, pUTC, pInstance, pNamespace, pHostType, pHostName, pUserDimension, pCount, pDuration, pQueueduration, pSquares)
as %Status
SubClass responsibility
Only return an error if expect a retry will be successful as
returning an error will mean the temporary data is not deleted
Expected parameters are
"SC",tLocalTime, tUTC, ..%Instance, tNamespace, tHostType, tHostName, tUserDimension, tCount, tDuration, tQueueDuration, tSquares
method OnCollectSAMSample(pHostType, pHostName, pUserDimension, pCount, pDuration, pQueueduration)
as %Status
method OnInit()
as %Status
This user callback method is called via initConfig() from %OnNew() or in the case of SOAP Services from OnPreSOAP()
method OnKeepalive(pAdapterStatus As %Status)
as %Status
This method will be called within KeepaliveInterval of the last return from OnTask() or OnKeepalive().
It is called via the Adapter's OnKeepalive() method, which is called from the Host.OnTask() method;
if there is no Adapter there is no keepalive call.
method OnTearDown()
as %Status
If collecting SAM data then remove last sample by this code.
This is needed since this sampler might not be running but the Production is.