Skip to main content

Configuring the Message Bank Clients

This page describes how to configure the client systems that send messages to the Enterprise Message Bank.

Enabling Access to %CSP.Monitor. Classes

The Enterprise Message Bank requires access to classes in the %CSP.Monitor. package on the client systems. On each client system, in the ObjectScript shell, go to the %SYS namespace and enter the following command:

 Set ^SYS("Security","CSP","AllowPrefix","<monitor URL>","%CSP.Monitor.") = 1

For <monitor URL>, The name of the default web application for the given namespace, followed by a slash (/), as defined on the client system. Leave blank to use the default /csp/namespace/, which is the usual web application name for IRIS installations. For IRIS for Health, Health Connect, or HealthShare instances, the usual web application name is instead /csp/healthshare/namespace/services/.

If you are not certain what to use, an administrator of the target system can check the web application name.

Be sure to include the trailing period in %CSP.Monitor.

Configuring a Client Production to Send Messages

You must configure each desired client production to send messages to the Message Bank. For each client production, perform the following configuration steps:

  1. Add the specialized message bank operation (Ens.Enterprise.MsgBankOperationOpens in a new tab) to the production and configure it as needed.

    Note:

    For this business host, Operation Name must be the Message Bank operation class name. Either leave this blank to use the default class name or enter Ens.Enterprise.MsgBankOperation.

    See the following subsection for details on the settings.

  2. Configure the link to the Message Bank.

    Or navigate to the Interoperability > View > Enterprise Message Bank page. The first time you enter the Enterprise Message Bank page, InterSystems IRIS prompts you for information to define the link. This information is the same as described earlier.

Now the production is configured to send messages to the Message Bank.

Important:

Although the Enterprise Message Bank can receive messages without having the sending production listed as an enterprise system, it cannot resend messages without access to the credentials. Creating Client Configurations has instructions on enabling access to productions, so that messages can be resent.

Configuring Settings for a Message Bank Business Operation

Configure the following settings specifically for the Message Bank:

Enable Archiving

Set to True. This starts messages queuing from all business hosts in the client production. Note that this queueing continues even if you disable the operation and while it is not able to connect to the Message Bank. The operation forwards any queued messages to the Message Bank server whenever it is enabled.

If set to False, the operation does not queue any messages for the Message Bank.

IP Address

IP address of the Message Bank production. Note that this does not include the web server port number.

Port

TCP port number used by the Message Bank production input service (9192 is the default).

Optionally configure the following additional settings:

Archive Items

Controls which messages to send to the Message Bank. The default behavior is to archive everything except scheduler messages as shown by the value:

*[*],-Ens.ScheduleService[*],-Ens.ScheduleHandler[*]

See the following subsection.

Event Log Interval

How frequently should we check for conforming Event Log events that may need to be forwarded to the Message Bank server. 0 means check only when messages are being forwarded.

Force Keepalives

If set to True, send empty event submissions periodically if no conforming events need to be submitted.

MyForceIPAddr

IP address to report to the Message Bank server. If you do not specify a value, the business operation queries the local system and reports the local IP address.

You may choose to specify an IP address for several reasons:

  • The client machine is a member of a cluster with a common cluster IP address. If you specify the cluster IP address, the Message Bank server responds to the cluster rather than to the client machine.

  • The client machine is multi-homed and associated with more than one local IP address. In this situation, you can specify which local IP address the business operation reports to the Message Bank server. Doing so prevents the Message Bank server from generating multiple Node Id values for the client machine.

You can modify the MyForceIPAddr setting only from the ObjectScript shell by defining the MyForceIPAddr node of the ^Ens.MsgBank global, for example:

set ^Ens.MsgBank("MyForceIPAddr") = "192.0.2.23"

Specifying the MyForceIPAddr setting may prevent the Message Bank server from automatically recognizing that a client has been upgraded or otherwise modified. Additionally, the setting may prevent the Message Bank from generating new Node Id values for client machines that report the same Node Id value. If multiple client machines contribute messages under the same Node Id, message ID collisions in the Message Bank repository may occur.

For information on other settings, see the following:

Details for the Archive Items Setting

The Archive Items setting controls which messages the production sends to the Message Bank. It is a comma-separated list of configuration names of items whose messages are to be archived to the Message Bank server.

Archive log events for each item using the following colon-separated syntax:

item[evtype1:evtype2:Trace_cat]

Within the event type brackets, you can use the following characters in your selection list:

Pattern character Placement Resulting action
*   include all event types
- at the front of an item exclude the type from archiving entirely
! at the end of an item exclude message bodies from archiving
$ at the end of an item exclude search table entries from archiving
- at the end of an item exclude message headers from archiving
_ for events of type Trace optionally used to select a particular category of trace event. Event type Trace without a suffix means Trace events of all categories.

For example:

  • *[*]—Archive everything

  • *$[*],Ens.Alert![-*]—Archive all events, headers, and bodies but not SearchTable entries; but do not archive bodies or events from item Ens.Alert.

Note:

InterSystems IRIS only archives trace events if it has logged them. You can use these settings only to restrict which logged events get archived, not to archive any events that you did not configure to be logged.

See Also

FeedbackOpens in a new tab