Class Reference
IRIS for UNIX 2019.2
InterSystems: The power behind what matters   
Documentation  Search
  [ENSLIB] >  [Ens] >  [Enterprise] >  [OperationBase]
Private  Storage   

abstract class Ens.Enterprise.OperationBase extends Ens.BusinessOperation

This operation and its configuration control archiving of messages from a configured subset of the config items in the production, via the MessageHandler() method.


Parameters Properties Methods Queries Indices ForeignKeys Triggers
2 12 8


This is a Business Operation class.

The associated Adapter class is Ens.OutboundAdapter.

Ens.MessageHeader %Library.Persistent

%AlertStartTime %ConfigName %ConfigQueueName %LastActionTime
%LastHandledTime %LastReportedError %QuitTask %RequestHeader
%SessionId %SuperSession %WarnedLatest %isShadow
Adapter AlertGroups AlertOnError AlertRetryGracePeriod
ArchiveIO ArchiveItems BusinessPartner DeferResponse
EnableArchiving EventLogInterval FailureTimeout IOLogEntry
InactivityTimeout NoFailWhileDisconnected QueueCountAlert QueueWaitAlert
ReplyCodeActions Retry RetryCount RetryInterval
SendSuperSession SuspendMessage ThrottleDelay

%AddToSaveSet %ClassIsLatestVersion %ClassName %ConstructClone
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Extends
%GetParameter %IsA %IsModified %New
%NormalizeObject %ObjectModified %OnClose %OnNew
%OriginalNamespace %PackageName %RemoveFromSaveSet %SerializeObject
%SetModified %SuperSessionSet %ValidateObject AdapterName
AssignOneSetting CloseIOLogEntry DeferResponse EnumerateSettingsClose
EnumerateSettingsExecute EnumerateSettingsFetch GenerateSuperSession GetDeferredResponseToken
GetMessageList GetProductionSettingValue GetProductionSettings GetPropertyConnections
GetSettings GetShadowInstance IncludeSuperSession MessageHeaderHandler
NewIOLogEntry OnConfigChange OnError OnFailureTimeout
OnGenerateSuperSession OnGetConnections OnGetReplyAction OnInit
OnKeepalive OnMessage OnMonitor OnProductionStart
OnProductionStop OnTask OnTearDown QueueName
SaveIOLogEntry SendAlert SendDeferredResponse SendRequestAsync



• parameter ADAPTER = "Ens.OutboundAdapter";
The type of adapter used to communicate with external systems
• parameter SETTINGS = "ArchiveItems:Basic,EnableArchiving:Basic";
List of properties can be set as settings in the configuration file format is a comma separated list of property names


• property ArchiveItems as %String(MAXLEN="") [ InitialExpression = "*[*],-Ens.ScheduleService[*],-Ens.ScheduleHandler[*]" ];
Comma-separated list of ConfigNames of items whose message traffic should be archived to the MsgBank server
* means all items
- at the front of an item means exclude it from archiving entirely
! at the end of an item means exclude message bodies from archiving
$ at the end of an item means exclude SearchTable entries if any from archiving
- at the end of an item means exclude message headers from archiving

Log Events may be archived for each item using the following colon-separated syntax:

Within the event type brackets,
* means all event types
- in front of a type means exclude it from archiving

For events of type Trace, _ can be optionally used to select a particular category of trace event.
Event type Trace without a suffix means Trace events of all categories.
For example, *[*] means archive everything, and *$[*],Ens.Alert![-*] means archive all events, headers and bodies but not SearchTable entries, except don't archive bodies or events from item Ens.Alert.

Note that Trace events will only be archived if they have been logged. That is, these settings can only be used to restrict which logged events get archived, not to archive any events that were not configured to be logged.

• property EnableArchiving as %Boolean;
Enable queueing of archive events from other Config Items. Unless this setting is True no messages will be queued for archiving.
If this setting is True, messages will be queued for archiving even while this Operation is disabled.
All messages configured to be archived will be queued to this Operation for archiving. This Operation will forward them to the MsgBank server whenever it is enabled.
• property EventLogInterval as %Numeric [ InitialExpression = 0 ];
How frequently should we check for conforming EventLog events that may need to be forwarded to the MsgBank Server.
0 means check only when messages are being forwarded.


• method MessageHeaderHandler(pRequestHeader As Ens.MessageHeader, Output pResponseHeader As Ens.MessageHeader) as %Status
This method is for internal use
• classmethod OnConfigChange(pProduction As Ens.Config.Production, pItem As Ens.Config.Item)
This method is called when config changes to this item are saved from the portal This method uses $$$EnsMirrorIndexInc to trigger all other jobs to call SetTraceOptimizer which calls InitArchiveFlags() which will update their behavior based on the config changes to this item.
• method OnInit() as %Status
This user callback method is called just after %OnNew()
• method OnMessage(pRequest As Ens.MessageHeader, Output pResponse As %Library.Persistent) as %Status
This is the default message handler. All request types not declared in the message map are delivered here
• method OnTask() as %Status
Override to use DeQueueId
• method OnTearDown() as %Status
This user callback method is called from %OnClose()

Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.