InterSystems IRIS Data Platform 2020.4 > Class Reference > ENSLIB namespace > %Monitor.Manager


class %Monitor.Manager extends %Library.RegisteredObject, %XML.Adaptor

Provides system management functions for the MONITOR and Application Monitor

Method Inventory


classmethod ClearSystemCounters(System As %Boolean = 0) as %Integer [ Language = objectscript ]
Clear the current system MONITOR counters
System = 1 indicates to specifically clear the system level counters
classmethod EmailSender(sender As %String) as %String [ Language = objectscript ]
Set email sender
classmethod EnableEmail(enable As %Boolean) as %Boolean [ Language = objectscript ]
Email enabled
classmethod Halt() as %Integer [ Language = objectscript ]
Halt the System monitor
classmethod Interval(interval As %Integer) as %String [ Language = objectscript ]
Set sampling interval
classmethod IsActive() as %Boolean [ Language = objectscript ]
Return summary active status: 0 - no active classes, else 1 (some active classes)
classmethod Recipients(recipients As %List) as %List [ Language = objectscript ]
Set email recipients
classmethod Refresh() as %Integer [ Language = objectscript ]
Refresh the System Monitor
classmethod SmtpPassword(passwd As %String) as %String [ Language = objectscript ]
Set email SMTP password
classmethod SmtpServer(server As %String) as %String [ Language = objectscript ]
Set email SMTP Server name. Returns current Server name (input argument is optional).
classmethod SmtpServerPort(port As %String) as %String [ Language = objectscript ]
Set email SMTP Server port. Returns current Server port (input argument is optional).
classmethod SmtpServerSSL(ByRef SSLConfig As %String, ByRef UseSTARTTLS As %Boolean) [ Language = objectscript ]
Set email SMTP SSLConfiguration and UseSTARTTLS (as defined in %Net.SMTP). Returns current SSLConfiguration and UseSTARTTLS (input arguments are optional).
classmethod SmtpUserName(name As %String) as %String [ Language = objectscript ]
Set email SMTP user name
classmethod Start() as %Integer [ Language = objectscript ]
Start the System Monitor
classmethod StartSystemCounters(System As %Boolean = 0, Processes As %Integer = 10, Routines As %Integer = 60, Globals As %Integer = 25, Network As %Integer = 5, ProcessList As %List) as %Integer [ Language = objectscript ]
Enable the system MONITOR counters

System = 1 to separately enable only system level counters (other parameters ignored)

Note that if System level counters are enabled separately, then they must also be specifically stopped or cleared separately (use System = 1 for the Stop() and Clear() methods)

Processes = the number of individual processes to collect counts for
Routines = the number of individual routines to collect counts for
Globals = the number of individual globals to collect counts for
Network = the number of individual network nodes to collect counts for
ProcessList = a $List of specific process IDs to collect counts for

Note that the MONITOR will allocate 'slots' for the number of processes, globals, routines and nodes you indicate. The first 'n' processes, routines, globals and nodes to increment the counters will take those slots, and all counts from other processes, globals, routines, and nodes will be added to the 'Other' slot.
These counters are the same metrics as reported by the PERFMON utility. If you plan to view the data collected via ^PERFMON, you should ensure that the start time for calculating per/second data is properly set for ^PERFMON by running the $$Clear^PERFMON() function. This will reset the counters and start time.
classmethod StopSystemCounters(System As %Boolean = 0) as %Integer [ Language = objectscript ]
Stop the system MONITOR counters

System = 1 indicates to specifically stop the system level counters (if those were started separately)
classmethod SystemCountersActive(System As %Boolean = 0) as %String [ Language = objectscript ]
Check if the system MONITOR counters are currently active

Returns '0' if not active, or a positive integer if active.
A '1' indicates that PERFMON (or the SystemCounters in this class) are active.
A '2' indicates that %SYS.MONLBL (or the %Monitor.System.LineByLine class) is active.
If the 'System' parameter is included as '1', then this will also return a second comma-delimited piece indicating the status of the 'system-only' level counters documented above in the StartSystemCounters() method. So, a '1,1' means both PERFMON and the system-only counters are active, but have been started separately. A '1,0' means that just a PERFMON collection was started (which includes system-level counters, but they will be stopped when PERFMON is stopped).

Inherited Members

Inherited Methods