extends %RegisteredObject, %XML.Adaptor
Provides system management functions for the MONITOR and Application Monitor
classmethod ClearSystemCounters(System As %Boolean = 0)
Clear the current system MONITOR counters
classmethod EmailSender(sender As %String)
System = 1 indicates to specifically clear the system level counters
Set email sender
classmethod EnableEmail(enable As %Boolean)
Halt the System monitor
classmethod Interval(interval As %Integer)
Set sampling interval
Return summary active status: 0 - no active classes, else 1 (some active classes)
classmethod Recipients(recipients As %List)
Set email recipients
Refresh the System Monitor
classmethod SmtpPassword(passwd As %String)
Set email SMTP password
classmethod SmtpServer(server As %String)
Set email SMTP Server name.
Returns current Server name (input argument is optional).
classmethod SmtpServerPort(port As %String)
Set email SMTP Server port.
Returns current Server port (input argument is optional).
classmethod SmtpServerSSL(ByRef SSLConfig As %String, ByRef UseSTARTTLS As %Boolean)
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)
Set email SMTP user name
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)
Enable the system MONITOR counters
classmethod StopSystemCounters(System As %Boolean = 0)
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.
Stop the system MONITOR counters
classmethod SystemCountersActive(System As %Boolean = 0)
System = 1 indicates to specifically stop the system level counters (if those were started separately)
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).